Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

result mismatch in BFS #20

Open
jinz2014 opened this issue Mar 29, 2019 · 3 comments
Open

result mismatch in BFS #20

jinz2014 opened this issue Mar 29, 2019 · 3 comments

Comments

@jinz2014
Copy link

jinz2014 commented Mar 29, 2019

Running the BFS example in OpenCL-U/D shows:

Computed node 2 cost (-2147483647 != 45) does not match the expected value

Thanks

@jinz2014 jinz2014 changed the title result mismatch in BSP result mismatch in BFS Mar 29, 2019
@el1goluj
Copy link
Member

Hi jinz2014,
Sorry for the delay. Could you please give us more details?

  1. What input graph are you using?
  2. What GPU are you testing on?
  3. Does the error happens for both U and D version? In every run?

Thanks,
Juan

@jinz2014
Copy link
Author

jinz2014 commented Jun 20, 2019

Sorry for the late reply. A few things need to be checked:

Some gcc version compiles the application with the following error:
g++ -std=c++11 -I/soft/libraries/intel/system_studio_2019/opencl/SDK/include -c -MMD -o main.o main.cpp
In file included from /soft/compilers/gcc/7.4.0/linux-rhel7-x86_64/include/c++/7.4.0/bits/move.h:54:0,
from /soft/compilers/gcc/7.4.0/linux-rhel7-x86_64/include/c++/7.4.0/atomic:42,
from kernel.h:36,
from main.cpp:36:
/soft/compilers/gcc/7.4.0/linux-rhel7-x86_64/include/c++/7.4.0/type_traits:680:65: error: there are no arguments to ‘__is_trivially_copyable’ that depend on a template parameter, so a declaration of ‘__is_trivially_copyable’ must be available [-fpermissive]
: public integral_constant<bool, __is_trivially_copyable(_Tp)>
....
...

So I switch to intel's compiler, but in Makefile, the following doesn't add the option for Intel C++ compilers.

51 is_pthreads=$(shell ${CXX} -v 2&gt; /dev/stdout | grep "Thread model" | awk {'print $$3'})
52 ifeq ($(is_pthreads),posix)
53 LIB+=-pthread
54 endif

When I run BFS, I got the following error for OpenCL-D BFS:

$./bfs

Intel(R) Xeon(R) CPU Number of nodes = 264346 Number of edges = 733846 Initialization Time (ms): 241.688000
Allocation Time (ms): 0.118000
Copy To Device Time (ms): 2.828000
Kernel Time (ms): 1.654000
Copy Back and Merge Time (ms): 0.532000
Computed node 2 cost (-2147483647 != 45) does not match the expected value

When I run BFS, I got the following error for OpenCL-U BFS:
$./bfs
Intel(R) Xeon(R) CPU Allocation Time (ms): 0.043000
Number of nodes = 264346 Number of edges = 733846 Initialization Time (ms): 123.644000
Segmentation fault

@el1goluj
Copy link
Member

Hi jinz2014,
The Chai benchmarks have not been extensively tested on Intel Xeon CPU as the OpenCL device.

  • For OpenCL-D, the error might be related to different consistency models on CPU and GPU or different thread scheduling.
  • For OpenCL-U, please double check that your OpenCL stack for CPU supports OpenCL 2.0 (or higher) features.
    I will try to check and give more updates later.
    Thanks,
    Juan

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants