charm icon indicating copy to clipboard operation
charm copied to clipboard

CkIO processor placement options are ignored

Open trquinn opened this issue 10 years ago • 5 comments

Original issue: https://charm.cs.illinois.edu/redmine/issues/551


The code documentation for Ck::IO::Options describes "basePE", "skipPEs", and "activePEs" to specify which processors are to participate in an IO session. However, the session array is created without a processor map, so the processors are always allocated with the default map (round-robin?). Inserting debugging statements into the CkIO code verifies that this is the case.

trquinn avatar Sep 04 '14 19:09 trquinn

Original date: 2016-02-26 21:11:18


The use of CkIO::Options does not have a use case as of now. The bug was about the misleading source code documentation for CkIO::Options. This was modified to indicate that CkIO::Options is not a stable interface.(Fix: ~~https://charm.cs.illinois.edu/gerrit/#/c/1092/~~ https://github.com/UIUC-PPL/charm/commit/1b2787598a0918b293fb165127c72248b18ff58d)

nitbhat avatar Apr 24 '19 22:04 nitbhat

Original date: 2016-03-03 19:46:55


Knowing that ChaNGa is actually using CkIO for its output in production runs, we can task someone to study its performance if that's a bottleneck, and make things work as they would actually need to in order to improve that.

PhilMiller avatar Apr 24 '19 22:04 PhilMiller

Original date: 2016-03-03 22:33:30


It looks like the original bug was addressed in the literal sense. Phil's change seems to go towards a more fundamental intuition that the bug report was issued due to someone hunting for performance tuning possibilities in the (unsupported) placement schemes. If there is a use case (perhaps performance related) that requires placement support in CkIO, that should be opened as a new redmine issue, with pertinent details, and refer to this one.

ericjbohm avatar Apr 24 '19 22:04 ericjbohm

Just to raise awareness of this bug: the documentation for CkIO in docs/libraries refers to Ck::IO::Options PE placement options that don't work. In particular, "skipPEs" is actually "1" and can't be changed.

trquinn avatar Dec 07 '22 23:12 trquinn

Another documentation/implementation problem: the "activePEs" is essentially ignored. The number of PEs used for writing is set by the file size and the stripe size.

trquinn avatar Dec 13 '22 21:12 trquinn