Code Monkey home page Code Monkey logo

Comments (10)

bfeinberg avatar bfeinberg commented on July 25, 2024 1

This likely comes from the change in the string ABI around c++11 discussed here: https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html.

Ubuntu 16.04's c++ standard lib uses the dual ABI but g++ 4.x doesn't know about it you see the crash above. If you attach a debugger you'll see that it occurs in the option_parser and so is completely workload independent.

Luckily the fix is relatively simple. Build gpgpu-sim using g++ 5.x (I've used 5.4 successfully) when using Ubuntu 16.04. This can create a bit of annoyance when working with CUDA 4.0 as 5.4 is above the max version nvcc will allow but you can switch gcc/g++ versions when compiling applications back to 4.x.

from gpgpu-sim_distribution.

jayresearch avatar jayresearch commented on July 25, 2024 1

Here is how i have resolved this issue in:
Ubuntu 16.04
built the simulator using
gcc-5.4/g++-5.4
and compiled cuda code using gcc-4.4
The suggestion by bfeinberg worked for me.
I have to resolve the following additional compilation errors:
in file: instructions.cc
replaced: #include<math.h> with #include
replaced: isnan with std::isnan (also in file cuda-math.cc)

Added .str() in the following lines in file cuda_runtime_api.cc
std::cout << "Failed to execute: " << cmd.str() << std::endl;
std::cout << "Trying to parse " << libcodfn.str() << std::endl;
The above error was due to ostream and stringstream mismatch.

best!

from gpgpu-sim_distribution.

rohitsakala avatar rohitsakala commented on July 25, 2024

I am also facing the same error. Any update ?

from gpgpu-sim_distribution.

tgrogers avatar tgrogers commented on July 25, 2024

from gpgpu-sim_distribution.

libingict avatar libingict commented on July 25, 2024

Hi, @tgrogers

Thanks for your caring. I was using the ubuntu 16 in a docker container and did not try other workloads.
Now I am using gpgpusim on ubuntu 14. I directly downloaded rodinia_2.0.1 from the website and recompiled the benchmark suites.
Then gpgpusim can run and no error occurs.

Here is the OS version:
Distributor ID: Ubuntu Description: Ubuntu 14.04 LTS Release: 14.04 Codename: trusty
The cuda toolkit version
nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2011 NVIDIA Corporation Built on Thu_May_12_11:09:45_PDT_2011 Cuda compilation tools, release 4.0, V0.2.1221
The gcc version
gcc version 4.4.7 (Ubuntu/Linaro 4.4.7-8ubuntu1)
Hope my feedback will be helpful.
Thanks again.

from gpgpu-sim_distribution.

rdevans0 avatar rdevans0 commented on July 25, 2024

Can confirm that I also ran into this issue attempting to compile with gcc-4.8 on Ubuntu 16.04. Solution was to compile with the built in gcc-5.4.0.

from gpgpu-sim_distribution.

shenjiangqiu avatar shenjiangqiu commented on July 25, 2024

Should we add some #if macro to judge the GCC version in OptionParse.cc? That problem may make a lot of trouble the guys new to GPGPUSIM( as to me before)

from gpgpu-sim_distribution.

HUSTzhaowei avatar HUSTzhaowei commented on July 25, 2024

Hello guys,I have the same question and I cannot build GPGPUsim successfully with GCC 5.4.0. Is there anyone know how to fix this issue? Thanks!

from gpgpu-sim_distribution.

shenjiangqiu avatar shenjiangqiu commented on July 25, 2024

from gpgpu-sim_distribution.

lucmann avatar lucmann commented on July 25, 2024

@jayresearch I wonder if you still encountered the std::stringstream problems with GCC version < 5 to build the simulator. In fact when I ran make with GCC version 9.2.1, those two std::stringstream object missing .str() issues occurred. It doesn't seem to be the same with the issue libingict posted here, does it? But I really wonder how others get it passed through.

P.S. my OS version Ubuntu 19.10, arch x86_64, cuda 4.2.9

from gpgpu-sim_distribution.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.