24
24
25
25
BEGIN_C_DECLS
26
26
27
+ /**
28
+ * Auto-tuning is disabled for now.
29
+ */
30
+ #define OMPI_MCA_COLL_HAN_AUTO_TUNE 0
31
+
27
32
/*
28
33
* Today;
29
34
* . only 2 modules available for intranode (low) level
@@ -203,21 +208,24 @@ typedef struct mca_coll_han_component_t {
203
208
uint32_t han_scatter_up_module ;
204
209
/* low level module for scatter */
205
210
uint32_t han_scatter_low_module ;
206
- /* whether enable auto tune */
207
- uint32_t han_auto_tune ;
208
211
/* whether we need reproducible results
209
212
* (but disables topological optimisations)
210
213
*/
211
214
uint32_t han_reproducible ;
215
+ #if OMPI_MCA_COLL_HAN_AUTO_TUNE
216
+ /* whether enable auto tune */
217
+ uint32_t han_auto_tune ;
212
218
/* create a 3D array
213
219
* num_processes (n): 2 4 8 16 32 64 (6)
214
220
* num_core (c): 2 4 8 12 (4)
215
221
* message size (m): 1 - 4194304 (23)
216
222
*/
217
- uint32_t han_auto_tune_n ;
218
- uint32_t han_auto_tune_c ;
219
- uint32_t han_auto_tune_m ;
220
- selection * han_auto_tuned ;
223
+ uint32_t han_auto_tune_n ;
224
+ uint32_t han_auto_tune_c ;
225
+ uint32_t han_auto_tune_m ;
226
+ char * han_auto_tune_filename ;
227
+ selection * han_auto_tuned ;
228
+ #endif /* OMPI_MCA_COLL_HAN_AUTO_TUNE */
221
229
bool use_simple_algorithm [COLLCOUNT ];
222
230
223
231
/* Dynamic configuration rules */
@@ -382,11 +390,11 @@ mca_coll_han_scatter_intra_dynamic(SCATTER_BASE_ARGS,
382
390
383
391
/* Bcast */
384
392
int mca_coll_han_bcast_intra_simple (void * buff ,
385
- int count ,
386
- struct ompi_datatype_t * dtype ,
387
- int root ,
388
- struct ompi_communicator_t * comm ,
389
- mca_coll_base_module_t * module );
393
+ int count ,
394
+ struct ompi_datatype_t * dtype ,
395
+ int root ,
396
+ struct ompi_communicator_t * comm ,
397
+ mca_coll_base_module_t * module );
390
398
void mac_coll_han_set_bcast_argu (mca_bcast_argu_t * argu , mca_coll_task_t * cur_task , void * buff ,
391
399
int seg_count , struct ompi_datatype_t * dtype ,
392
400
int root_up_rank , int root_low_rank ,
@@ -449,23 +457,23 @@ int mca_coll_han_reduce_t1_task(void *task_argu);
449
457
/* Allreduce */
450
458
int
451
459
mca_coll_han_allreduce_intra_simple (const void * sbuf ,
452
- void * rbuf ,
453
- int count ,
454
- struct ompi_datatype_t * dtype ,
455
- struct ompi_op_t * op ,
456
- struct ompi_communicator_t * comm ,
457
- mca_coll_base_module_t * module );
460
+ void * rbuf ,
461
+ int count ,
462
+ struct ompi_datatype_t * dtype ,
463
+ struct ompi_op_t * op ,
464
+ struct ompi_communicator_t * comm ,
465
+ mca_coll_base_module_t * module );
458
466
int
459
467
mca_coll_han_allreduce_reproducible_decision (struct ompi_communicator_t * comm ,
460
468
mca_coll_base_module_t * module );
461
469
int
462
470
mca_coll_han_allreduce_reproducible (const void * sbuf ,
463
471
void * rbuf ,
464
- int count ,
465
- struct ompi_datatype_t * dtype ,
466
- struct ompi_op_t * op ,
467
- struct ompi_communicator_t * comm ,
468
- mca_coll_base_module_t * module );
472
+ int count ,
473
+ struct ompi_datatype_t * dtype ,
474
+ struct ompi_op_t * op ,
475
+ struct ompi_communicator_t * comm ,
476
+ mca_coll_base_module_t * module );
469
477
470
478
void mac_coll_han_set_allreduce_argu (mca_allreduce_argu_t * argu ,
471
479
mca_coll_task_t * cur_task ,
@@ -497,11 +505,11 @@ int mca_coll_han_allreduce_t3_task(void *task_argu);
497
505
/* Scatter */
498
506
int
499
507
mca_coll_han_scatter_intra (const void * sbuf , int scount ,
500
- struct ompi_datatype_t * sdtype ,
501
- void * rbuf , int rcount ,
502
- struct ompi_datatype_t * rdtype ,
503
- int root ,
504
- struct ompi_communicator_t * comm , mca_coll_base_module_t * module );
508
+ struct ompi_datatype_t * sdtype ,
509
+ void * rbuf , int rcount ,
510
+ struct ompi_datatype_t * rdtype ,
511
+ int root ,
512
+ struct ompi_communicator_t * comm , mca_coll_base_module_t * module );
505
513
int mca_coll_han_scatter_us_task (void * task_argu );
506
514
int mca_coll_han_scatter_ls_task (void * task_argu );
507
515
void mac_coll_han_set_scatter_argu (mca_scatter_argu_t * argu ,
@@ -524,11 +532,11 @@ void mac_coll_han_set_scatter_argu(mca_scatter_argu_t * argu,
524
532
/* Gather */
525
533
int
526
534
mca_coll_han_gather_intra (const void * sbuf , int scount ,
527
- struct ompi_datatype_t * sdtype ,
528
- void * rbuf , int rcount ,
529
- struct ompi_datatype_t * rdtype ,
530
- int root ,
531
- struct ompi_communicator_t * comm , mca_coll_base_module_t * module );
535
+ struct ompi_datatype_t * sdtype ,
536
+ void * rbuf , int rcount ,
537
+ struct ompi_datatype_t * rdtype ,
538
+ int root ,
539
+ struct ompi_communicator_t * comm , mca_coll_base_module_t * module );
532
540
int mca_coll_han_gather_lg_task (void * task_argu );
533
541
int mca_coll_han_gather_ug_task (void * task_argu );
534
542
void mac_coll_han_set_gather_argu (mca_gather_argu_t * argu ,
@@ -548,19 +556,19 @@ void mac_coll_han_set_gather_argu(mca_gather_argu_t * argu,
548
556
int w_rank , bool noop , ompi_request_t * req );
549
557
int
550
558
mca_coll_han_gather_intra_simple (const void * sbuf , int scount ,
551
- struct ompi_datatype_t * sdtype ,
552
- void * rbuf , int rcount ,
553
- struct ompi_datatype_t * rdtype ,
554
- int root ,
555
- struct ompi_communicator_t * comm ,
556
- mca_coll_base_module_t * module );
559
+ struct ompi_datatype_t * sdtype ,
560
+ void * rbuf , int rcount ,
561
+ struct ompi_datatype_t * rdtype ,
562
+ int root ,
563
+ struct ompi_communicator_t * comm ,
564
+ mca_coll_base_module_t * module );
557
565
/* reordering after gather, for unordered ranks */
558
566
void
559
567
ompi_coll_han_reorder_gather (const void * sbuf ,
560
- void * rbuf , int rcount ,
561
- struct ompi_datatype_t * rdtype ,
562
- struct ompi_communicator_t * comm ,
563
- int * topo );
568
+ void * rbuf , int rcount ,
569
+ struct ompi_datatype_t * rdtype ,
570
+ struct ompi_communicator_t * comm ,
571
+ int * topo );
564
572
565
573
566
574
@@ -590,11 +598,12 @@ void mac_coll_han_set_allgather_argu(mca_allgather_argu_t * argu,
590
598
bool noop , bool is_mapbycore , int * topo , ompi_request_t * req );
591
599
int
592
600
mca_coll_han_allgather_intra_simple (const void * sbuf , int scount ,
593
- struct ompi_datatype_t * sdtype ,
594
- void * rbuf , int rcount ,
595
- struct ompi_datatype_t * rdtype ,
596
- struct ompi_communicator_t * comm ,
597
- mca_coll_base_module_t * module );
601
+ struct ompi_datatype_t * sdtype ,
602
+ void * rbuf , int rcount ,
603
+ struct ompi_datatype_t * rdtype ,
604
+ struct ompi_communicator_t * comm ,
605
+ mca_coll_base_module_t * module );
598
606
599
607
END_C_DECLS
608
+
600
609
#endif /* MCA_COLL_HAN_EXPORT_H */
0 commit comments