Skip to content
This repository has been archived by the owner on Sep 5, 2023. It is now read-only.

FEAT: RPMA Fio Engine (server-side) support for offset #1922

Open
grom72 opened this issue Jul 11, 2022 · 0 comments
Open

FEAT: RPMA Fio Engine (server-side) support for offset #1922

grom72 opened this issue Jul 11, 2022 · 0 comments
Labels
enhancement New feature or request FIO wontfix This will not be worked on

Comments

@grom72
Copy link
Contributor

grom72 commented Jul 11, 2022

FEAT: RPMA Fio Engine (server-side) support for offset

Rationale

To enable running several engines sharing the same pmem file an offset is needed as a supported command option.
https://fio.readthedocs.io/en/latest/fio_doc.html#cmdoption-arg-offset

It is related to ongoing work to enable multiconnection configuration benchmarking as described in #1879 (draft).
Instead of several separate filename it will be possible to share one file between several (at least two) jobs.

Description

The proposed change only concerns the server-side implementation of the DeviceDax PMem access.
Both offset and offset_align shall be supported.

librpma_fio.c:


char *librpma_fio_allocate_pmem(struct thread_data *td, struct fio_file *f,
		size_t size, struct librpma_fio_mem *mem)
...
	if (f->filetype == FIO_TYPE_CHAR) {
		/* Each thread uses a separate offset within DeviceDAX. */
		ws_offset = (td->thread_number - 1) * size + f->file_offset ;
	} else {
		/* Each thread uses a separate FileSystemDAX file. No offset is needed. */
		ws_offset = 0;
	}
...

Please see https://github.com/pmem/rpma/blob/master/tools/perf/multiply_connection_benchmark.md for how to build a configuration with two parallel connections.
With the new parameter offset one file can be used:

server.job:

...
[server]
direct_write_to_pmem=${direct_write_to_pmem}
numjobs=${numjobs}
size=100MiB
serverip=${serverip}
filename=${filename1}
offset=0

[server]
direct_write_to_pmem=${direct_write_to_pmem}
numjobs=${numjobs}
size=100MiB
serverip=192.168.103.4
filename=${filename1}
offset=50%
...
@grom72 grom72 added enhancement New feature or request help wanted Extra attention is needed FIO labels Jul 11, 2022
@grom72 grom72 removed the help wanted Extra attention is needed label Aug 17, 2022
@grom72 grom72 changed the title FEAT: RPMA Fio Engine (server-side) support for offset [DRAFT] FEAT: RPMA Fio Engine (server-side) support for offset Aug 17, 2022
@grom72 grom72 added the wontfix This will not be worked on label Aug 26, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request FIO wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant