Skip to Content.
Sympa Menu

charm - Re: [charm] [ppl] Broken cuda examples

charm AT lists.cs.illinois.edu

Subject: Charm++ parallel programming system

List archive

Re: [charm] [ppl] Broken cuda examples


Chronological Thread 
  • From: "Dokania, Harshit" <hdokani2 AT illinois.edu>
  • To: "Robson, Michael P" <mprobson AT illinois.edu>, Yan-Ming Li <yanming AT multicorewareinc.com>
  • Cc: "charm AT cs.uiuc.edu" <charm AT cs.uiuc.edu>
  • Subject: Re: [charm] [ppl] Broken cuda examples
  • Date: Tue, 7 Jul 2015 22:27:29 +0000
  • Accept-language: en-US
  • List-archive: <http://lists.cs.uiuc.edu/pipermail/charm/>
  • List-id: CHARM parallel programming system <charm.cs.uiuc.edu>

Hello Yan-Ming,

There are three examples to show how to use charm++ with cuda. The two which you already got working, and overlapTestGPUManager.  This ALL should be working, Please paste the errors you see from overlapTestGPUManager. 

The fourth example overlapTestStream is not working with cuda built of charm because GPU Manager expects a function "void kernelSelect(workRequest *wr)", you can declare it empty just by having {}. You will also have to add a  header #include "wr.h".

Note: If you are running with +p2 or +p4 you must be having those number of GPUs, or you can hack the source of GPU Manager to use the single GPU for all the PEs.  

Regards,
Harshit

From: ppl-bounces AT cs.uiuc.edu [ppl-bounces AT cs.uiuc.edu] on behalf of Michael Robson [mprobson AT illinois.edu]
Sent: Monday, July 06, 2015 1:48 PM
To: Yan-Ming Li
Cc: charm AT cs.uiuc.edu
Subject: Re: [ppl] [charm] Broken cuda examples

Hello Yan-Ming,

I wanted to let you know that I'm looking into this and will update you when I have a fix. Thanks for pointing this out.

Sincerely,
Michael Robson

On Tue, Jun 30, 2015 at 11:07 AM, Yan-Ming Li <yanming AT multicorewareinc.com> wrote:
Hi  all,

I would like to do some experiments on charm++ cuda features, I tried to run the four existing cuda examples but found that two of them are broken.

For hello and vectorAdd, they worked fine.
However I got a coredump on the overlapTestGPUManager test and  a link error on overlapTestStream. 

I compiled this charm++ build with the output from the smart build Perl script: ./build charm++ net-linux-x86_64 gcc cuda --with-production

Please tell me if I got any step wrong.

Charm++: standalone mode (not using charmrun)
Converse/Charm++ Commit ID: v6.6.0-297-gf1b5dd4
[0] done creating buffer pool
Charm++> scheduler running in netpoll mode.
CharmLB> Load balancer assumes all CPUs are same.
Charm++> Running on 1 unique compute nodes (4-way SMP).
Charm++> cpu topology info is gathered in 0.000 seconds.
Segmentation fault (core dumped)

../../../../bin/charmc   overlapTest.ci
../../../../bin/charmc  -O3 -c overlapTest.C
/usr/local/cuda/bin/nvcc  -O3 -c -use_fast_math  -I/usr/local/cuda/include  -I../../../../include -o overlapTestCU.o overlapTest.cu
../../../../bin/charmc  -language charm++ -o overlapTest overlapTest.o overlapTestCU.o -L/usr/local/cuda/lib64 -lcuda -lcudart 
../../../../bin/../lib/libcudahybridapi.a(hybridapi.o): In function `gpuProgressFn':
tmpxft_000030f8_00000000-4_cuda-hybrid-api.cudafe1.cpp:(.text+0xc3e): undefined reference to `kernelSelect(workRequest*)'
tmpxft_000030f8_00000000-4_cuda-hybrid-api.cudafe1.cpp:(.text+0xdd9): undefined reference to `kernelSelect(workRequest*)'
collect2: error: ld returned 1 exit status
Fatal Error by charmc in directory /home/xatier/kalmar/charm/charm-gcc/examples/charm++/cuda/overlapTestStream
   Command g++ -rdynamic -L/usr/local/cuda/lib64 -L/usr/local/cuda/lib64 -o overlapTest -L../../../../bin/../lib -I../../../../bin/../include ../../../../bin/../lib/libldb-rand.o overlapTest.o overlapTestCU.o moduleinit14959.o ../../../../bin/../lib/libmemory-default.o ../../../../bin/../lib/libthreads-default.o -lckmain -lck -lconv-cplus-y -lconv-core -lconv-util -lconv-partition -lcuda -lcudart -lcudahybridapi -lckqt -ldl -lcuda -lcudart -lm returned error code 1
charmc exiting...
make: *** [overlapTest] Error 1

Thanks,
Yan Ming




Archive powered by MHonArc 2.6.16.

Top of Page