Comments (9)
Thanks -- I've reproduced this.
from grid.
For info -- I'm seeing it working under Clang and ICPC, but failing under G++ on Cori.
Amusingly, there is a bug in gdb on Cori that makes gdb itself segv when it reads the symbols in
the debug binary which is a pain... Apparently an infinite recursion loop on demangling C++11 symbols.
gdb gdb
from grid.
Hmm... it's associated with the use of std::thread in the comms overlapped with compute
portion.
I can disable this -- it went slower rather than faster on the Cray hardware I was targeting.
However, for now it does look to me like GCC's fault and not mine. I've committed a patch,
simply switching off the use of std::thread()
Peter
from grid.
Thank you very much, I have confirmed that the new version runs without any problems.
I actually had the same problem with Clang 3.5, but has disappeared now.
The latest version also runs with more realistic configurations with icpc:
- without the debug option: CXX=icpc --enable-simd=AVX --enable-precision=single CXXFLAGS="-std=c++11 -O3 -mavx" LIBS="-lgmp -lmpfr" --enable-comms=none
- with openmp: CXX=icpc --enable-simd=AVX --enable-precision=single CXXFLAGS="-fopenmp -std=c++11 -O3 -mavx " LIBS="-lgmp -lmpfr" --enable-comms=none
- with openmp and mpi: CXX=mpic++ --enable-simd=AVX --enable-precision=single CXXFLAGS="-fopenmp -std=c++11 -O3 -mavx " LIBS="-lgmp -lmpfr" --enable-comms=mpi
( my environment for the mpi is open MPI 1.10.2)
Issaku
from grid.
Thanks Issaku,
I will now return to the IMCI compilation.
Peter
from grid.
From Babbage at NERSC.
[pboyle@bint01 icpc-imci-none]$ icpc --version
icpc (ICC) 16.0.0 20150815
Copyright (C) 1985-2015 Intel Corporation. All rights reserved.
[pboyle@bint01 icpc-imci-none]$ gcc (GCC) 4.8.0
$ ../../configure --host=none --enable-precision=single --enable-simd=IMCI CXXFLAGS=-mmic -openmp -O3 -std=c++11 LDFLAGS= LIBS=-mmic -openmp --enabl
e-comms=none CXX=icpc
Clean compile:
make[1]: Entering directory `/chos/global/u1/p/pboyle/nightly/Grid/builds/icpc-imci-none/benchmarks'
CXX Benchmark_comms.o
CXX Benchmark_dwf.o
CXX Benchmark_memory_asynch.o
CXX Benchmark_memory_bandwidth.o
CXX Benchmark_su3.o
CXX Benchmark_wilson.o
CXX Benchmark_zmm.o
CXXLD Benchmark_comms
CXXLD Benchmark_su3
CXXLD Benchmark_memory_bandwidth
CXXLD Benchmark_memory_asynch
CXXLD Benchmark_zmm
CXXLD Benchmark_dwf
CXXLD Benchmark_wilson
from grid.
Also an aside on clang-3.5 -- Clang only integrated openMP into the main trunk on v3.8 .
I think, but don't know clang-omp++, the non-standard OpenMP development branch would have
been ok on 3.5, but not stock 3.5.
I've been using clang 3.8 since it was released since it was the first clang with OMP support
integrated in the main branch.
from grid.
I will try the new version with KNC, although I have no time till Friday. Also I will update my Clang to 3.8.
Thank you very much,
Issaku
from grid.
Now the latest version (Grid-f8f9fd6f22aede4c78284b912bee0ae79d68fb3c) runs on KNC, thank you very much.
../configure CXX=icpc --enable-simd=IMCI --enable-precision=single CXXFLAGS="-fast -mmic -fopenmp -std=c++11 -I/opt/mic/include/" LDFLAGS="-mmic" LIBS="-mmic -L/opt/mic/lib -lmpfr -lgmp" --enable-comms=none --host=none
(I also tried -O0 and -O3 instead of -fast, all of them works)
from grid.
Related Issues (20)
- MPI2 romio321 library fails when reading >= 2GB per rank HOT 2
- Cannot compile the gparity and adjoint versions of the CompactWilsonCloverAction
- Compilation errors and warnings build targeting Nvidia GPUs HOT 2
- GPU Benchmark_ITT segfaults with MPI and ranks > 1 HOT 9
- Create a version of Benchmark_ITT including Clover instead of Wilson
- Grid fails to build for Nc != 3
- hipcc on Crusher: function bcopy undefined (compiler does not have openmp enabled?) HOT 1
- Certain operations involving SitePropagator::scalar_object won't compile with CUDA for Nc > 3
- make install doesn't install all headers due to duplicate Config.h and Version.h HOT 3
- Using ILDG checkpointer causes a crash during write HOT 2
- Develop is broken HOT 1
- ARM NEON is broken HOT 2
- Feature request: provenance tracking
- Add hint to shm error message
- Cuda error invalid device ordinal
- Recent commit causing Grid build to fail
- The configure options --enable-setdevice and --diable-setdevice have no effect
- Grid does not compile on Arm with CUDA HOT 9
- invalid configuration argument when running with 1 GPU
- FlightRecorder.cc breaks compilation for --enable-comms=none HOT 1
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 grid.