Comments (6)
I vote for cl_ulong.
from clsparse.
I also lean in this direction; it would be nice to think we could handle 64bit sizes, but what would be the occurance of this in the 'real world'? Is it enough to just change cl_int to cl_uint? 64-bit data/registers can reduce kernel performance.
from clsparse.
If we change that we need to check if the kernel wrapper is receiving correct data type and probably the kernel parameters string need to be changed accordingly. kernel parameter string defines the types of the kernel parameters by substituting #define variables in the kernel code.
I will take care of it.
from clsparse.
The decision of whether we should switch our structures to use 64-bit members is somewhat dependent on how this affects kernel performance. I talk about this some in this comment: #20 (comment)
This idea is dependent on the new benchmark framework proposed in #21. We need to be able to measure performance of this change to determine if this is appropriate.
from clsparse.
I've going to take care of this as I work on SpM-dM.
I've been looking at the OpenCL API, and all the API's that take size parameters are taking size_t's. I think that is a good standard, and I am going to work on changing our data structures to use size_t's. We have to be careful not to copy size_t's to clSetKernelArg(), because the device may have a different address depth than host. We should dynamically detect the address depth of the device and cast the values we pass into clSetKernelArg() and equivalents.
from clsparse.
From my other projects we were taking cl_ulong for sizes. Be careful with the matrices, type for indexes are important.
from clsparse.
Related Issues (20)
- make install not working HOT 2
- Testing depends on remote content fetching HOT 6
- Possible overlinkage HOT 2
- Missing implementations of clsparseScoomv and clsparseDcoomv HOT 4
- "Kernel not found in cache" for SPMV sample HOT 1
- C# Wrapper HOT 5
- Wrong system size checks? HOT 4
- clsparseScoo2csr crashes for small matrix sizes
- Documentation does not make clear when output matrices are allocated by the library and when they have to be supplied by the user
- Probable bug in clsparseScsrmm() with cldenseMatrix HOT 2
- Not building on OS X High Sierra
- Segfault when reading 0-based matrix
- source-provider.cpp: No such file or directory HOT 1
- How to transpose?
- Can not link shared library HOT 1
- Segmentation fault when create cl_mem in sample_spmv
- CSR matrix format stores in a file
- compile error
- Example Interface with Eigen SparseMatrix
- Build fail at mm-reader.cpp
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from clsparse.