summaryrefslogtreecommitdiff
path: root/src/stream_manager.h
AgeCommit message (Collapse)Author
2025-08-19running formatter (#126)JRPan
* running formatter * consolidate CI runs * use cluster to run formatter * use cluster to run formatter * Add a CI-Success step
2025-03-06sst-integration-stream: make SST integration works with streams (#103)WilliamMTK
* sst-integration-stream: add apis to make SST integration works with stream * Add dev container specs
2025-02-18A bunch of maintenance fixes, the largest of which is getting the PTX ↵Tim Rogers
simulation to work with CUDA 12. (#95) * Fixing the formatter to always use a consistent format and running it on the codebase * Update linux-so-version.txt * Update Makefile * A couple of unnecessary files that are lingering around * Support CUDA 12 * Getting the PTX simulations to work with CUDA 12. The issue is that ptxas added more information (number of barriers and compile time). We have to parse these or lexx/yacc fail. * Update ptxinfo.l debug MACRO was ineffective * Update gpgpusim_check.cmake Update to make the CUDA version print a warning, not an error and updating the print to be more reflective of what the actual problem is.
2023-06-12it is safe to to change m_updates to unsgined, the accessor returns unsigned ↵Ahmad Alawneh
anyway, it should fix warning in done() fun
2020-04-07Merge remote-tracking branch 'localpub/dev' into devtgrogers
2019-09-13Big reformat change using clang-format-6.0Nick
2019-09-13Revert "Add src/ director formatting"Nick
This reverts commit 26ca8de4a6ec9bfe422a14cbe325a5f257df453b.
2019-09-13Add src/ director formattingNick
2019-07-27fix event done implboyealkim
2019-07-26fix indentationboyealkim
2019-07-25fix stream_merge front algoboyealkim
2019-06-10fixing thrust errorMahmoud
2018-11-09resolving merge conflictDeval Shah
2018-05-29implements null stream case on cudaStreamWaitEvent and updates warning on ↵Jonathan
null event to reflect api reference
2018-05-25tentative impl of cudaStreamWaitEventJonathan
2018-04-22Some classes were referred to as a class and a struct (reported as clang ↵Nathan Conrad
warnings). This makes these consistent.
2016-07-05BUG: kernels should return to stream if not pushed to concurrent kernel poolJin Wang
2015-06-05Fixing bug with max cycle/instruction/cta + bug with C++ name de-mangling ↵Tayler Hetherington
with spaces (e.g., using templates)
2014-08-14Review: 46001. Fixing a source of non-determinism in GPGPU-Sim (Bug 174). ↵Tayler Hetherington
Not sure if this is the only issue, but this was definitely a source of non-determinism (checked with many of the <rodinia>-FT benchmarks). In gpgpu_sim_thread_concurrent() (gpgpusim_entrypoint.cc), the inner do{...}while(active); only breaks when the gpu is not active. As a result, the gpu is only initialized when the gpu becomes momentarily inactive. If one kernel completes while another kernel is currently pending in the stream's queue, the next kernel will start running immediately causing the GPU to not be reinitialized (which includes resetting per-kernel stats). The fix simply recognizes that a kernel has completed and breaks from the loop prior to starting the next operation. [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 16463]
2014-08-14-being more conservative in locking the code of the kernel finish detection, ↵Ahmed El-Shafiey
solves the problem of underminitstic kernel finish detection [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 14206]
2014-08-14change copyright notice to include authorsTor Aamodt
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 9872]
2011-06-29changing copyright to BSDTor Aamodt
[git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 9687]
2010-12-28- parameter memory and active threads now part of kernel_info_t:Tor Aamodt
Parameters are finalized at kernel launch, which means the contents of parameter memory are initialized. Kernel arguement names have a fixed order, hence same address should be assigned on subsequent kernel launches of same kernel in other streams provided the data size param_t::size of arguments for each kernel launch is identical (an assertion has been added to check this is true). - passing regression [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 8303]
2010-12-28- Checkpointing new support for concurrent kernel execution (CUDA only, not ↵Tor Aamodt
OpenCL) This changelist adds full support for streams supported by a new class, stream_manager and enables concurrent execution of kernels from different streams. - fast_regression.sh fails for simpleMultiCopy, simpleStreams (other tests passing) ** Known issues ** - Kernel parameter passing is not done correctly for concurrent kernel execution (somehow concurrentKernels is not affected by this): the parameters are stored inside function_info, which is shared among parallel kernel launches so that the values passed into the launch are likely to get overwritten if multiple grids are launched in parallel streams. - Statistics are printed out whenever the simulation thread runs out of cuda commands (doesn't make sense to print out when a kernel ends during concurrent kernel execution). This will probably require further tweaking so as to be more compatible with data collection scripts. [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 8302]