Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pull request for Julia 1.0 support. #170

Merged
merged 5 commits into from Oct 18, 2018

Conversation

@sambitdash
Copy link
Contributor

commented Oct 14, 2018

Please do not merge it as I just came to know there is WIP in a branch. I had done substantial changes without realizing the other WIP code, hence just submitting these changes so that the code changes can be added to the other effort or referenced.

  1. The travis build is broken needs fixing.
  2. 4-5 test cases are commented out as they were not successful. Are annotated in the comments for review.
Test Summary: | Pass  Total
layout        |    1      1
Test Summary:   | Pass  Total
OpenCL.Platform |   13     13
Test Summary:  | Pass  Total
OpenCL.Context |   27     27
Test Summary: | Pass  Total
OpenCL.Device |   40     40
Test Summary:   | Pass  Total
OpenCL.CmdQueue |   21     21
Test Summary: | Pass  Total
OpenCL.Minver |   10     10
Test Callback
Test Summary: | Pass  Total
OpenCL.Event  |   16     16
Test Summary:  | Pass  Total
OpenCL.Program |   22     22
Test Summary: | Pass  Total
OpenCL.Kernel |   37     37
Test Summary:           | Pass  Total
OpenCL Hello World Test |    1      1
Test Summary:             | Pass  Total
OpenCL Low Level Api Test | 1024   1024
Test Summary:             | Pass  Total
OpenCL Struct Buffer Test |    1      1
Test Summary:             | Pass  Total
OpenCL Struct Buffer Test |    2      2
Test Summary: | Pass  Total
OpenCL.Memory |    7      7
[ Info: Skipping OpenCL.Buffer fill for Clover: fill is a v1.2 command
Test Summary: | Pass  Total
OpenCL.Buffer |  249    249
Test Summary:  | Pass  Total
OpenCL.CLArray |   12     12
Test Summary:                 | Pass  Total
context jl reference counting |    1      1
   Testing OpenCL tests passed 

@testset "layout" begin
x = ((10f0, 1f0, 2f0), (10f0, 1f0, 2f0), (10f0, 1f0, 2f0))
clx = cl.replace_different_layout(x)

@test clx == ((10f0, 1f0, 2f0, 0f0), (10f0, 1f0, 2f0, 0f0), (10f0, 1f0, 2f0, 0f0))
x = (nothing, nothing, nothing)
clx = cl.replace_different_layout(x)
@test clx == (0,0,0)
# TBD clx = cl.replace_different_layout(x)

This comment has been minimized.

Copy link
@sambitdash

sambitdash Oct 14, 2018

Author Contributor

This test cases runs into an infinite loop so has been commented out for testing. Recursive call etting to infinite loop at: replace_different_layout

This comment has been minimized.

Copy link
@SimonDanisch

SimonDanisch Oct 14, 2018

Member

I fixed that in my pr

This comment has been minimized.

Copy link
@sambitdash

sambitdash Oct 14, 2018

Author Contributor

Thanks @SimonDanisch that's great!!!

@@ -52,7 +54,7 @@ import OpenCL.cl.CLArray
B = cl.zeros(Float32, queue, 64, 128)
ev = transpose!(B, A)
cl.wait(ev)
@test cl.to_host(A') == cl.to_host(B)
# TBD @test cl.to_host(A') == cl.to_host(B)

This comment has been minimized.

Copy link
@sambitdash

sambitdash Oct 14, 2018

Author Contributor

adjoint is not implemented for the CLArray. This may have to be implemented or mapped to a standard operations to process later.

@@ -50,7 +50,7 @@ end
@test k[:num_args] == 4
@test k[:reference_count] > 0
@test k[:program] == prg
@test typeof(k[:attributes]) == String
#TBD @test typeof(k[:attributes]) == String

This comment has been minimized.

Copy link
@sambitdash

sambitdash Oct 14, 2018

Author Contributor

Leads to OutOfMemory exception.

@@ -224,6 +221,7 @@ end
@test r == [1f0, 4f0]
end

#= TBD

This comment has been minimized.

Copy link
@sambitdash

sambitdash Oct 14, 2018

Author Contributor

Very similar infinite loop in recursive function call replace_different_layout.

@sambitdash

This comment has been minimized.

Copy link
Contributor Author

commented Oct 14, 2018

@SimonDanisch you may want to review these changes and may find it useful for the complete work you are carrying out on the sd-1.0 branch. Unfortunately, I didn't realize about your work before starting to work with the code. This only contains simple language related fixes and no logic changes that may be needed. There are 4 test case code logic may need to be changed to fix test case failures, which are commented out in this PR and also highlighted for reference.

@sambitdash

This comment has been minimized.

Copy link
Contributor Author

commented Oct 14, 2018

@vchuravy, @SimonDanisch, @juliohm I do not have any plans of working further on this PR now. I didn't realize that you are already on this. Now that I know, I will have you lead the effort and complete the activity :-). You can use the code I submitted in any manner if that will help you finish the task. In case you need any support let me know.

@juliohm

This comment has been minimized.

Copy link
Contributor

commented Oct 17, 2018

Thank you @sambitdash for the efforts anyways. @SimonDanisch is leading the other PR with the changes.

@SimonDanisch SimonDanisch merged commit 7788ad5 into JuliaGPU:master Oct 18, 2018
1 check failed
1 check failed
continuous-integration/travis-ci/pr The Travis CI build failed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.