A reminder that this is tomorrow at 10.00 in A-261. If you are dialling in from elsewhere, the call-in number is Toll free: 1-888-336-3436 Passcode: 243924 Rajeev -----Original Message----- From: Rajeev Thakur [mailto:[email protected]] Sent: Monday, October 22, 2007 3:53 PM To: 'Ray Loy'; 'Susan Coghlan'; 'Kalyan Kumaran' Cc: '[email protected]' Subject: BG/P DCMF tutorial The DCMF tutorial has been scheduled for Tue, Nov 6, 10.00am in A-261. Please inform others who may be interested. Sameer Kumar will give it over the phone. Rajeev From: Sameer Kumar [mailto:[email protected]] Sent: Friday, October 19, 2007 6:06 PM To: Rajeev Thakur Rajeev, There are several levels at which one can program on Blue Gene/L, MPI ( and higher level programming paradigms like ARMCI, Charm++ and UPC), DCMF Public API, Extending DCMF by adding new C++ components to it and SPI. DCMF API is at a lower level than MPI and I can think of a few reasons why an apps programmer may like to program to it in specific regions of a standard MPI application. 1) DCMF_Get : this is a very low latency get protocol where a core can pull data out of a remote location's virtual address. A short get takes about 1.4us. 2) DCMF_Multisend: Send several messages in one calls thus amortizing the startup overheads. The multisends are also more flexible and can send deposit bit broadcast messages. The time to send a multisend is about the same as that of an MPI message, but subsequent sends take about 0.5us. 3) DCMF_Send : send an active message. The latency of dcmf send is lower than MPI (1.8us vs 3+us for MPI). 4) Non blocking collective calls. Handy in virtual node mode where there is only compute thread per core. The other two levels of programing on Blue Gene are extending DCMF as a contrib to add new features to it which can then be exposed to MPI. Finally, programming directly to the hardware through SPI. I believe one of the main reasons of going down to SPI is flexibility. Especially, if the application does need the generality (and hence overheads) of a programming paradigm like MPI. Hope this clarifies and please let me know if you have more questions. sameer.
participants (1)
-
Rajeev Thakur