Comments (6)
Did you configure prrte
with --enable-debug
? If you do not, some calls to ORTE_NAME_PRINT
will be #ifdef’ed out and performance should be much higher.
from prrte.
@ggouaillardet This is my prrte configuration:
./configure --prefix=$INSTALLPATH --with-hwloc=$INSTALLPATH --with-pmix=$INSTALLPATH --with-libevent=$HOME/.local --without-slurm --with-tm=/cm/shared/apps/torque/6.1.1
I tried again and specified --disable-debug
, same behavior.
from prrte.
Setting aside the debug question - the use of publish/lookup to exchange endpoint data is never going to work well as it was not intended for that purpose. If you read the standard, you will see that the exchange of data during wireup is done with the code path you eventually adopted - put/commit/fence/get. This code path is done as a collective operation and thus can scale.
Publish/lookup is intended for things like the rendezvous between two unrelated jobs where one process from each job takes responsibility for posting and retrieving the information about the other job, and then disseminating it to its peers. It is designed not to scale for the simple reason that it isn't a collective operation - thus, you can not take advantage of any of the scalable operations used in the other code path.
At some point in the near future, you will not need to put/commit any data. All endpoint information will be pre-computed and provided at startup. Thus, there will be no time required to start the job beyond just the time it takes to fork/exec the processes.
from prrte.
@rhc54 Thanks for the explanation! Closing.
from prrte.
@lyu your report contains a valid point regarding the (mostly unnecessary) cost of ORTE_NAME_PRINT()
could you please manually download and apply the patch at https://github.com/pmix/prrte/pull/226.patch ?
long story short, most ORTE_NAME_PRINT()
calls will be avoided.
from prrte.
@ggouaillardet This patch works as good as manually removing the opal_output_verbose
function calls!
from prrte.
Related Issues (20)
- Question about mca parameter passing HOT 30
- add-hostfile not working on parallel prun commands HOT 20
- RMAPS round_robin bind_multiple issue HOT 1
- Compile failure with "missing separator" HOT 1
- `prte_stdint.h: error: conflicting types for 'intptr_t'; have 'int'` HOT 22
- pterm conflicts with putty HOT 35
- 3.0.2: autogen.pl script fails HOT 8
- mpirun/prte hang after application completion HOT 46
- pterm name collision HOT 1
- OMPI cmd line processing converts all single-dash options to double-dash HOT 3
- Problems dealing with shared TMPDIRs HOT 18
- mpirun --report-bindings segfault HOT 6
- v3.0.3 release checklist
- prted is missing an option '--allow-run-as-root'
- Enabling debugging options for prrte HOT 2
- PR 1907 broke support for at least one non-ssh PLM component HOT 3
- Option --use-hwthread-cpus incorrectly translated to --bind-to :hwthread
- Binding to partially disabled objects HOT 15
- Can't launch prted HOT 22
- Building for Fault Tolerance HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prrte.