Coder Social home page Coder Social logo

How to use PIMProcess about pimsim HOT 3 OPEN

vineodd avatar vineodd commented on August 12, 2024
How to use PIMProcess

from pimsim.

Comments (3)

ChenfengZhao avatar ChenfengZhao commented on August 12, 2024

I see PIMProcess is declared in pseudo_inst.cc, so how can I use this function in my program. Should I run my program in fs mode?

I have a similar question that there are two functions called "PIMProcess" and "HostProcess" in pseudo_inst.cc. Do you know how can I use them?

from pimsim.

m1chaelyeung avatar m1chaelyeung commented on August 12, 2024

I see PIMProcess is declared in pseudo_inst.cc, so how can I use this function in my program. Should I run my program in fs mode?

I have a similar question that there are two functions called "PIMProcess" and "HostProcess" in pseudo_inst.cc. Do you know how can I use them?

I have read the source code of PIMProcess and HostProcess. I only add PIMProcess into my own cpp code and compile it as kernel. Then I set up the parameters of my system and run gem5. But I got a segmentation fault during the runtime and I haven't solved it.
parameters: ./build/X86/gem5.opt --debug-flags=PIM configs/example/se.py --cpu-type=TimingSimpleCPU --cpu-clock=1GHz --caches --l2cache --l1d_size=32kB --l1i_size=32kB --l2_size=2MB --l1d_assoc=4 --l1i_assoc=4 --l2_assoc=8 --enable-pim --pim-type=cpu --num-pim-processors=1 --coherence-granularity=64B -c ./tests/test-progs/pim-hello/hellopim
running output: (pim_test.cpp) : Use PIM to calculate the sum of a and b
8329928000: system.cpu: Encountering PIMProcess command, use PIM processor [0]
takeOverFrom-1
8329928000: system.cpu: SuspendContext 0
8329928000: system.pim_cpu: ActivateContext 0
warn: ClockedObject: Already in the requested power state, request ignored
8329978000: system.pim_cpu: inst is 1135751896167858944
gem5 has encountered a segmentation fault!

--- BEGIN LIBC BACKTRACE ---
./build/X86/gem5.opt(_Z15print_backtracev+0x28)[0x85e8e8]
./build/X86/gem5.opt[0x86effd]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7f5fedfbf390]
./build/X86/gem5.opt(_ZN6X86ISA7Decoder12doResetStateEv+0x2e)[0x99776e]
./build/X86/gem5.opt(_ZN6X86ISA7Decoder7processEv+0x495)[0x997ec5]
./build/X86/gem5.opt(_ZN13BaseSimpleCPU10preExecuteEv+0x61a)[0x7dd65a]
./build/X86/gem5.opt(_ZN15TimingSimpleCPU14completeIfetchEP6Packet+0x182)[0x7d6a92]
./build/X86/gem5.opt(_ZN10EventQueue10serviceOneEv+0x11d)[0x8652dd]
./build/X86/gem5.opt(_Z9doSimLoopP10EventQueue+0x50)[0x87e150]
./build/X86/gem5.opt(_Z8simulatem+0xd1b)[0x87f23b]
./build/X86/gem5.opt[0x1699ada]
./build/X86/gem5.opt[0x8bf335]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x7852)[0x7f5fee27c7b2]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6ffd)[0x7f5fee27bf5d]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6ffd)[0x7f5fee27bf5d]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6ffd)[0x7f5fee27bf5d]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f5fee274de9]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x613b)[0x7f5fee27b09b]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6ffd)[0x7f5fee27bf5d]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x85c)[0x7f5fee3b311c]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f5fee274de9]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyRun_StringFlags+0x76)[0x7f5fee2ef236]
./build/X86/gem5.opt(_Z6m5MainiPPc+0x8f)[0x86db5f]
./build/X86/gem5.opt(main+0x33)[0x738503]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f5fec94f830]
./build/X86/gem5.opt(_start+0x29)[0x75dbc9]
--- END LIBC BACKTRACE ---

from pimsim.

m1chaelyeung avatar m1chaelyeung commented on August 12, 2024

I see PIMProcess is declared in pseudo_inst.cc, so how can I use this function in my program. Should I run my program in fs mode?

I have a similar question that there are two functions called "PIMProcess" and "HostProcess" in pseudo_inst.cc. Do you know how can I use them?

If you wanna discuss it for more detailed information, send a email([email protected]) to me and let me know.

from pimsim.

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.