SimplePipe is a simulation framework/tool for analyzing performance effects of alternative task allocations in network processors having multiple pipelines where pipeline stages are either processors or dedicated hardware functions. Tasks are defined in terms of sequence of separate C program executions with each sequence representing the functional requirements of a flow, where a flow is defined as the set of packets having the same processing requirements. The assignment of tasks to pipeline stages, selection of number of stages, and determination of processor cache sizes are important designing decisions impacting performance