Changeset a31e166
- Timestamp:
- 09/15/15 15:08:34 (6 years ago)
- Branches:
- 4.0.1-hotfixes, cachetimestamps, develop, dpdk-ndag, etsilive, libtrace4, master, ndag_format, pfring, rc-4.0.1, rc-4.0.2, rc-4.0.3, rc-4.0.4, ringdecrementfix, ringperformance, ringtimestampfixes
- Children:
- ccb89e4
- Parents:
- c968cfc
- Location:
- lib
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
lib/combiner_ordered.c
rf625817 ra31e166 9 9 static int init_combiner(libtrace_t *t, libtrace_combine_t *c) { 10 10 int i = 0; 11 assert( libtrace_get_perpkt_count(t) > 0);11 assert(trace_get_perpkt_threads(t) > 0); 12 12 libtrace_queue_t *queues; 13 c->queues = calloc(sizeof(libtrace_queue_t), libtrace_get_perpkt_count(t));13 c->queues = calloc(sizeof(libtrace_queue_t), trace_get_perpkt_threads(t)); 14 14 queues = c->queues; 15 for (i = 0; i < libtrace_get_perpkt_count(t); ++i) {15 for (i = 0; i < trace_get_perpkt_threads(t); ++i) { 16 16 libtrace_deque_init(&queues[i], sizeof(libtrace_result_t)); 17 17 } … … 116 116 libtrace_queue_t *queues = c->queues; 117 117 bool allactive = true; 118 bool live[ libtrace_get_perpkt_count(trace)]; // Set if a trace is alive119 uint64_t key[ libtrace_get_perpkt_count(trace)]; // Cached keys118 bool live[trace_get_perpkt_threads(trace)]; // Set if a trace is alive 119 uint64_t key[trace_get_perpkt_threads(trace)]; // Cached keys 120 120 uint64_t min_key = UINT64_MAX; 121 121 uint64_t prev_min = 0; … … 124 124 125 125 /* Loop through check all are alive (have data) and find the smallest */ 126 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {126 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 127 127 libtrace_queue_t *v = &queues[i]; 128 128 if (libtrace_deque_get_size(v) != 0) { … … 172 172 min_key = key[min_queue]; // Update our minimum 173 173 // Check all find the smallest again - all are alive 174 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {174 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 175 175 if (live[i] && min_key >= key[i]) { 176 176 min_key = key[i]; … … 186 186 min_key = UINT64_MAX; // Update our minimum 187 187 // Check all find the smallest again - all are alive 188 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {188 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 189 189 if (live[i] && min_key >= key[i]) { 190 190 min_key = key[i]; … … 207 207 read_internal(trace, c, true); 208 208 empty = 0; 209 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {209 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 210 210 if (libtrace_deque_get_size(&q[i]) == 0) 211 211 empty ++; 212 212 } 213 213 } 214 while (empty < libtrace_get_perpkt_count(trace));214 while (empty < trace_get_perpkt_threads(trace)); 215 215 } 216 216 … … 219 219 libtrace_queue_t *queues = c->queues; 220 220 221 for (i = 0; i < libtrace_get_perpkt_count(trace); i++) {221 for (i = 0; i < trace_get_perpkt_threads(trace); i++) { 222 222 assert(libtrace_deque_get_size(&queues[i]) == 0); 223 223 } … … 230 230 libtrace_queue_t *queues = c->queues; 231 231 int i; 232 for (i = 0; i < libtrace_get_perpkt_count(trace); i++) {232 for (i = 0; i < trace_get_perpkt_threads(trace); i++) { 233 233 libtrace_deque_apply_function(&queues[i], (deque_data_fn) libtrace_make_result_safe); 234 234 } -
lib/combiner_sorted.c
rf625817 ra31e166 7 7 static int init_combiner(libtrace_t *t, libtrace_combine_t *c) { 8 8 int i = 0; 9 assert( libtrace_get_perpkt_count(t) > 0);9 assert(trace_get_perpkt_threads(t) > 0); 10 10 libtrace_vector_t *queues; 11 c->queues = calloc(sizeof(libtrace_vector_t), libtrace_get_perpkt_count(t));11 c->queues = calloc(sizeof(libtrace_vector_t), trace_get_perpkt_threads(t)); 12 12 queues = c->queues; 13 for (i = 0; i < libtrace_get_perpkt_count(t); ++i) {13 for (i = 0; i < trace_get_perpkt_threads(t); ++i) { 14 14 libtrace_vector_init(&queues[i], sizeof(libtrace_result_t)); 15 15 } … … 41 41 libtrace_vector_t *queues = c->queues; 42 42 int i; 43 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {43 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 44 44 libtrace_vector_apply_function(&queues[i], (vector_data_fn) libtrace_make_result_safe); 45 45 } … … 51 51 size_t a; 52 52 // Combine all results into queue 1 53 for (i = 1; i < libtrace_get_perpkt_count(trace); ++i)53 for (i = 1; i < trace_get_perpkt_threads(trace); ++i) 54 54 { 55 55 libtrace_vector_append(&queues[0],&queues[i]); … … 77 77 libtrace_vector_t *queues = c->queues; 78 78 79 for (i = 0; i < libtrace_get_perpkt_count(trace); i++) {79 for (i = 0; i < trace_get_perpkt_threads(trace); i++) { 80 80 assert(libtrace_vector_get_size(&queues[i]) == 0); 81 81 libtrace_vector_destroy(&queues[i]); -
lib/combiner_unordered.c
rf625817 ra31e166 7 7 static int init_combiner(libtrace_t *t, libtrace_combine_t *c) { 8 8 int i = 0; 9 assert( libtrace_get_perpkt_count(t) > 0);9 assert(trace_get_perpkt_threads(t) > 0); 10 10 libtrace_queue_t *queues; 11 c->queues = calloc(sizeof(libtrace_queue_t), libtrace_get_perpkt_count(t));11 c->queues = calloc(sizeof(libtrace_queue_t), trace_get_perpkt_threads(t)); 12 12 queues = c->queues; 13 for (i = 0; i < libtrace_get_perpkt_count(t); ++i) {13 for (i = 0; i < trace_get_perpkt_threads(t); ++i) { 14 14 libtrace_deque_init(&queues[i], sizeof(libtrace_result_t)); 15 15 } … … 31 31 32 32 /* Loop through and read all that are here */ 33 for (i = 0; i < libtrace_get_perpkt_count(trace); ++i) {33 for (i = 0; i < trace_get_perpkt_threads(trace); ++i) { 34 34 libtrace_queue_t *v = &queues[i]; 35 35 while (libtrace_deque_get_size(v) != 0) { … … 59 59 libtrace_queue_t *queues = c->queues; 60 60 61 for (i = 0; i < libtrace_get_perpkt_count(trace); i++) {61 for (i = 0; i < trace_get_perpkt_threads(trace); i++) { 62 62 assert(libtrace_deque_get_size(&queues[i]) == 0); 63 63 } -
lib/libtrace_parallel.h
rf625817 ra31e166 509 509 void *global, 510 510 void *tls, 511 libtrace_packet_t *first_packet,512 511 libtrace_thread_t *sender); 513 512 … … 1281 1280 DLLEXPORT int trace_set_configuration_file(libtrace_t *trace, FILE *file); 1282 1281 1283 DLLEXPORT int libtrace_get_perpkt_count(libtrace_t* t); // TODO MATCH WITH THE SET_PERPKT1282 DLLEXPORT int trace_get_perpkt_threads(libtrace_t* t); 1284 1283 1285 1284 /** -
lib/trace_parallel.c
r2b4444f ra31e166 205 205 (*cbs->message_first_packet)(trace, thread, 206 206 trace->global_blob, thread->user_data, 207 data.pkt,sender);207 sender); 208 208 return; 209 209 case MESSAGE_TICK_COUNT: … … 287 287 * @return 288 288 */ 289 DLLEXPORT int libtrace_get_perpkt_count(libtrace_t * t) {289 DLLEXPORT int trace_get_perpkt_threads(libtrace_t * t) { 290 290 return t->perpkt_thread_count; 291 291 }
Note: See TracChangeset
for help on using the changeset viewer.