Performance tuning: change the default behavior of ompio to *not* segment individual read/write operations.
In most cases, performance seems to be better if not segmented.
Этот коммит содержится в:
родитель
db5af26de7
Коммит
0aa3049bfc
@ -31,7 +31,7 @@
|
||||
#include "ompi/mca/io/io.h"
|
||||
#include "io_ompio.h"
|
||||
|
||||
int mca_io_ompio_cycle_buffer_size = OMPIO_PREALLOC_MAX_BUF_SIZE;
|
||||
int mca_io_ompio_cycle_buffer_size = -1;
|
||||
int mca_io_ompio_bytes_per_agg = OMPIO_PREALLOC_MAX_BUF_SIZE;
|
||||
int mca_io_ompio_num_aggregators = -1;
|
||||
int mca_io_ompio_record_offset_info = 0;
|
||||
@ -162,10 +162,10 @@ static int register_component(void)
|
||||
MCA_BASE_VAR_SCOPE_READONLY,
|
||||
&mca_io_ompio_coll_timing_info);
|
||||
|
||||
mca_io_ompio_cycle_buffer_size = OMPIO_PREALLOC_MAX_BUF_SIZE;
|
||||
mca_io_ompio_cycle_buffer_size = -1;
|
||||
(void) mca_base_component_var_register(&mca_io_ompio_component.io_version,
|
||||
"cycle_buffer_size",
|
||||
"Cycle buffer size of individual reads/writes",
|
||||
"Data size issued by individual reads/writes per call",
|
||||
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
|
||||
OPAL_INFO_LVL_9,
|
||||
MCA_BASE_VAR_SCOPE_READONLY,
|
||||
|
@ -106,7 +106,12 @@ int ompio_io_ompio_file_read (mca_io_ompio_file_t *fh,
|
||||
&decoded_iov,
|
||||
&iov_count);
|
||||
|
||||
bytes_per_cycle = mca_io_ompio_cycle_buffer_size;
|
||||
if ( -1 == mca_io_ompio_cycle_buffer_size ) {
|
||||
bytes_per_cycle = max_data;
|
||||
}
|
||||
else {
|
||||
bytes_per_cycle = mca_io_ompio_cycle_buffer_size;
|
||||
}
|
||||
cycles = ceil((float)max_data/bytes_per_cycle);
|
||||
|
||||
#if 0
|
||||
|
@ -103,7 +103,12 @@ int ompio_io_ompio_file_write (mca_io_ompio_file_t *fh,
|
||||
&decoded_iov,
|
||||
&iov_count);
|
||||
|
||||
bytes_per_cycle = mca_io_ompio_cycle_buffer_size;
|
||||
if ( -1 == mca_io_ompio_cycle_buffer_size ) {
|
||||
bytes_per_cycle = max_data;
|
||||
}
|
||||
else {
|
||||
bytes_per_cycle = mca_io_ompio_cycle_buffer_size;
|
||||
}
|
||||
cycles = ceil((float)max_data/bytes_per_cycle);
|
||||
|
||||
#if 0
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user