@@ -199,6 +199,7 @@ typedef struct mca_coll_han_op_module_name_t {
199
199
mca_coll_han_op_up_low_module_name_t scatter ;
200
200
mca_coll_han_op_up_low_module_name_t scatterv ;
201
201
mca_coll_han_op_up_low_module_name_t alltoall ;
202
+ mca_coll_han_op_up_low_module_name_t alltoallv ;
202
203
} mca_coll_han_op_module_name_t ;
203
204
204
205
/**
@@ -260,6 +261,11 @@ typedef struct mca_coll_han_component_t {
260
261
/* alltoall: parallel stages */
261
262
int32_t han_alltoall_pstages ;
262
263
264
+ /* low level module for alltoallv */
265
+ uint32_t han_alltoallv_low_module ;
266
+ int64_t han_alltoallv_smsc_avg_send_limit ;
267
+ double han_alltoallv_smsc_noncontig_activation_limit ;
268
+
263
269
264
270
/* name of the modules */
265
271
mca_coll_han_op_module_name_t han_op_module_name ;
@@ -286,6 +292,8 @@ typedef struct mca_coll_han_component_t {
286
292
287
293
/* Define maximum dynamic errors printed by rank 0 with a 0 verbosity level */
288
294
int max_dynamic_errors ;
295
+
296
+ opal_free_list_t pack_buffers ;
289
297
} mca_coll_han_component_t ;
290
298
291
299
/*
@@ -297,6 +305,7 @@ typedef struct mca_coll_han_single_collective_fallback_s
297
305
union
298
306
{
299
307
mca_coll_base_module_alltoall_fn_t alltoall ;
308
+ mca_coll_base_module_alltoallv_fn_t alltoallv ;
300
309
mca_coll_base_module_allgather_fn_t allgather ;
301
310
mca_coll_base_module_allgatherv_fn_t allgatherv ;
302
311
mca_coll_base_module_allreduce_fn_t allreduce ;
@@ -319,6 +328,7 @@ typedef struct mca_coll_han_single_collective_fallback_s
319
328
typedef struct mca_coll_han_collectives_fallback_s
320
329
{
321
330
mca_coll_han_single_collective_fallback_t alltoall ;
331
+ mca_coll_han_single_collective_fallback_t alltoallv ;
322
332
mca_coll_han_single_collective_fallback_t allgather ;
323
333
mca_coll_han_single_collective_fallback_t allgatherv ;
324
334
mca_coll_han_single_collective_fallback_t allreduce ;
@@ -384,6 +394,9 @@ OBJ_CLASS_DECLARATION(mca_coll_han_module_t);
384
394
#define previous_alltoall fallback.alltoall.alltoall
385
395
#define previous_alltoall_module fallback.alltoall.module
386
396
397
+ #define previous_alltoallv fallback.alltoallv.alltoallv
398
+ #define previous_alltoallv_module fallback.alltoallv.module
399
+
387
400
#define previous_allgather fallback.allgather.allgather
388
401
#define previous_allgather_module fallback.allgather.module
389
402
@@ -440,6 +453,7 @@ OBJ_CLASS_DECLARATION(mca_coll_han_module_t);
440
453
HAN_UNINSTALL_COLL_API(COMM, HANM, allgather); \
441
454
HAN_UNINSTALL_COLL_API(COMM, HANM, allgatherv); \
442
455
HAN_UNINSTALL_COLL_API(COMM, HANM, alltoall); \
456
+ HAN_UNINSTALL_COLL_API(COMM, HANM, alltoallv); \
443
457
han_module->enabled = false; /* entire module set to pass-through from now on */ \
444
458
} while (0 )
445
459
503
517
mca_coll_han_alltoall_intra_dynamic (ALLTOALL_BASE_ARGS ,
504
518
mca_coll_base_module_t * module );
505
519
int
520
+ mca_coll_han_alltoallv_intra_dynamic (ALLTOALLV_BASE_ARGS ,
521
+ mca_coll_base_module_t * module );
522
+ int
506
523
mca_coll_han_allgather_intra_dynamic (ALLGATHER_BASE_ARGS ,
507
524
mca_coll_base_module_t * module );
508
525
int
@@ -566,4 +583,7 @@ static inline struct mca_smsc_endpoint_t *mca_coll_han_get_smsc_endpoint (struct
566
583
return (struct mca_smsc_endpoint_t * ) proc -> proc_endpoints [OMPI_PROC_ENDPOINT_TAG_SMSC ];
567
584
}
568
585
586
+ #define COLL_HAN_PACKBUF_PAYLOAD_BYTES (128*1024)
587
+
588
+
569
589
#endif /* MCA_COLL_HAN_EXPORT_H */
0 commit comments