tile.getComputeCode().addDRAMCommand(false, init || primepump, primepump, bytes, buffer, false);
tile.getComputeCode().addDRAMCommand(false, stage, bytes, buffer, false);
    private static void generateFilterOutputDRAMCommand(FilterTraceNode filterNode, FilterInfo filterInfo,					    RawTile tile, boolean init, boolean primepump)     {	if (filterNode.getNext() != null &&		 filterNode.getNext().isOutputTrace()) {	    //get this buffer or null if there are no outputs	    OffChipBuffer buffer =		IntraTraceBuffer.getBuffer(filterNode,					   (OutputTraceNode)filterNode.getNext()).getNonRedundant();	    if (buffer == null)		return;	    	    //get the number of items sent	    int items = filterInfo.totalItemsSent(init, primepump);	    //if this is the primepump, subtract the primepump items not comsumed	    //in the primepump stage, they get transfered below	    if (primepump)		items -= filterInfo.primePumpItemsNotConsumed();	    if (items > 0 ) {		int bytes = 		    Util.cacheLineDiv((items * Util.getTypeSize(filterNode.getFilter().getOutputType())) *				      4);		SpaceTimeBackend.println("Generating DRAM store command with " + items + " items, typesize " + 					 Util.getTypeSize(filterNode.getFilter().getOutputType()) + 					 " and " + bytes + " bytes");		tile.getComputeCode().addDRAMCommand(false, init || primepump, primepump, bytes, buffer, false);	    }	    	    if (primepump && filterInfo.primePumpItemsNotConsumed() > 0) {		int bytes = 		    Util.cacheLineDiv((filterInfo.primePumpItemsNotConsumed() * 				       Util.getTypeSize(filterNode.getFilter().getOutputType())) *				      4);		SpaceTimeBackend.println("Generating DRAM store command with " + filterInfo.primePumpItemsNotConsumed()					+ " items, typesize " + 				     Util.getTypeSize(filterNode.getFilter().getOutputType()) + 				     " and " + bytes + " bytes at end of primepipe");		tile.getComputeCode().addDRAMCommand(false, false, true, bytes, buffer, false);	    }	    	}    }