# full log_out_deq.out[0] >> main.AddLogseg() nic_rx('nic_rx', device=target.CAVIUM, cores=[nic_tx_threads + i for i in range(nic_rx_threads)]) process_eq('process_eq', process='app') init_segment('init_segment', process='app') create_segment('create_segment', process='app') nic_tx('nic_tx', device=target.CAVIUM, cores=range(nic_tx_threads)) master_process('app') ######################## Run test ####################### c = Compiler(main) c.include = r''' #include "nicif.h" #include "iokvs.h" #include "protocol_binary.h" ''' c.init = r''' settings_init(argv); // TODO: settings_init must be called before other inits. //ialloc_init(); ''' c.generate_code_as_header() c.depend = { "test_app": ['jenkins_hash', 'hashtable', 'ialloc', 'settings', 'app'] } c.compile_and_run(["test_app"])
# send local_or_remote.out_send >> PreparePkt() >> get_buff # local local_or_remote.out_local >> GetCore( ) >> rx_enq >> get_buff #CountTuple() >> get_buff get_buff >> tx_release nic_tx('nic_tx', process='dpdk', cores=range(n_nic_tx)) # nic_tx('nic_tx', device=target.CAVIUM, cores=[4,5,6,7]) inqueue_get('inqueue_get', process='dpdk') inqueue_advance('inqueue_advance', process='dpdk') outqueue_put('outqueue_put', process='dpdk') get_dccp_stat('get_dccp_stat', process='dpdk') c = Compiler(NicRxFlow, NicTxFlow) c.include = r''' #include <rte_memcpy.h> #include "worker.h" #include "storm.h" #include "dccp.h" ''' c.depend = { "test_storm": ['list', 'hash', 'hash_table', 'spout', 'count', 'rank', 'worker', 'dpdk'] } c.generate_code_as_header("dpdk") c.compile_and_run([("test_storm", workerid[test])])