Skip to content

Conversation

@RSpliet
Copy link
Contributor

@RSpliet RSpliet commented Jul 25, 2019

This pull request contain some of the clean fixes I performed to make OpenCL simulation work again in the current dev branch.

In addition to this, I worked around Issue #138 by simply defining no_of_ptx in opencl_runtime_api.cc . I didn't include this change in the pull request as I am unable to oversee the consequences of such a change.
Other changes not included but crucial for running OpenCL benchmarks again appear to be non-portable:

  • ptx_loader.cc contains some sed commands to change the version number in the PTX intermediate. Both the search and the replace version number had to be changed to work with the toolchain on my PC.
  • Changed the default sm_version in gpgpu_ptxinfo_load_from_string() from 20 to 35, to match the GPU in my PC.

Similar non-portable changes might be required for anyone who wishes to test these patches in greater detail.

@RSpliet RSpliet force-pushed the dev branch 4 times, most recently from fb26cb2 to ce01d53 Compare July 26, 2019 11:54
@RSpliet
Copy link
Contributor Author

RSpliet commented Jul 26, 2019

Force-push updates "libopencl: Stub clGetProgramBuildInfo()" to include CL_API_SUFFIX__VERSION_1_0 and to use the provided macros rather than open-coding tedious data copies.

@RSpliet RSpliet force-pushed the dev branch 2 times, most recently from 009198e to d748dce Compare July 26, 2019 16:49
@RSpliet
Copy link
Contributor Author

RSpliet commented Jul 26, 2019

And another update, this time pushing a v2 of d748dce "libopencl: Calculate a valid offset in bind_args()" to take into consideration alignment requirements. Sorry for having opened a pull request that has been a little WIP, I'm still advancing insights. From what I gather these should be good to merge now, although all feedback welcome!

@RSpliet
Copy link
Contributor Author

RSpliet commented Aug 8, 2019

@tgrogers Ping?

Assumes everything is ok, even if it isn't. Allows for some Rodinia
benchmarks to fail slightly later.

v2: Use available case macros.

Signed-off-by: Roy Spliet <rs855@cam.ac.uk>
Signed-off-by: Roy Spliet <rs855@cam.ac.uk>
v2: Adhere to alignment requirements.
v3: Small style fix.

Signed-off-by: Roy Spliet <rs855@cam.ac.uk>
@RSpliet
Copy link
Contributor Author

RSpliet commented Oct 17, 2019

Force-push to rebase against current gpgpu-sim_distribution/dev head. Continuous integration testing is broken beyond my control.

@aamodt Could you give me some indication whether you are open to third party contributions? I understand that people have agendas and lives, but 2.5 months of radio silence is a deterrent for collaboration.

@tgrogers
Copy link
Collaborator

tgrogers commented Oct 17, 2019 via email

@tgrogers
Copy link
Collaborator

I am going to look into why the regression is failing it is not your code - something changed in the testbench code that has caused this issue.

Copy link
Collaborator

@tgrogers tgrogers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me.
Can are there some OpenCL test cases we can incorporate into our testing flow to ensure we don't break this functionality in the future?

@tgrogers tgrogers merged commit 0215b37 into gpgpu-sim:dev Oct 17, 2019
@RSpliet
Copy link
Contributor Author

RSpliet commented Oct 17, 2019

This looks good to me.
Can are there some OpenCL test cases we can incorporate into our testing flow to ensure we don't break this functionality in the future?

I recall running some of the Rodinia benchmarks. Tomorrow at work I will rebase my working tree against your updated dev branch and verify. In my working tree there are some additional fixes and enhancements (some from my own hand, others cherry-picked from open pull requests, one from the just-closed PR #21 ) that may be required for Rodinia to work. The tidy commits live in my ocl-dev branch, but the unpolished one, referred to in part by issue #138 , might require some of your input before I'm happy to take that forward. Unfortunately, without a fix for #138, the OpenCL module doesn't even compile (well, link) neatly.

yechen3 pushed a commit to yechen3/gpgpu-sim_distribution that referenced this pull request Jan 21, 2021
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

Successfully merging this pull request may close these issues.

2 participants