Team,

I am not sure if this is the right forum for this request, or if a direct email 
would be better?

For the past 7+ years I have worked on porting SQLite to run entirely on the 
GPU using Nvidia's CUDA providing access to host files. The GPU is like any 
other embedded processor and should have SQLite.

http://on-demand.gputechconf.com/gtc/2016/presentation/s6652-sky-morey-sqlite.pdf
http://on-demand.gputechconf.com/gtc/2016/video/S6652.html

This project has reached a natural breaking point and I am re-platforming, 
updating said project to the latest SQLite and in the current SQLite Fossil 
repository for automatic upgrades, with an eventual goal, If your team finds it 
valuable, of slipstreaming into the code base as another embedded platform.

In order to support embedding SQLite on the GPU libcu has been created, which 
acts like a C function library, and extends to host resources to the GPU.

libcu - https://github.com/BclEx/libcu (will be moving to 
https://github.com/libcu/libcu)

sqlite-cuda - c, cpp, cuda enabled git mirror of SQLite sources: 
https://github.com/libcu/sqlite-cuda


Therefore I have three asks:

Firstly, unfortunately CUDA only supports a C++ compiler, and SQLite currently 
will not compile using the C++ ruleset. I have resolved all casting issues 
while support both C and C++, and with only minimal modifications: simple 
casts,  _cplusplus wrapped #defines ,  and modifications to build scripts.

  *   Optionally enable C and C++ compiler support - I can provide these 
changes, or help re-apply them to a branch for your evaluation.

Secondly, every CUDA method and field/constant must be prefixed with keyword(s) 
which target the Host or GPU. A standard define can be used similar the 
existing SQLITE_API and SQLITE_CDECL defines.


  *   Add SQLITE_METHOD, SQLITE_FIELD, SQLITE_CONTANT defines applied to every 
method and field - I can provide these changes, or help re-apply them to a 
branch for your evaluation.

Third, CUDA as an embedded platform require its own declarations, similar to 
those for the existing vxworks.h header. Add cuda.h file, and add to build 
scripts.


  *   Add cuda.h file and include in build scripts - I can provide these 
changes, or help re-apply them to a branch for your evaluation.


Thank you,

-.. . --. / ... -- .- .-. - . .-. / -.. .. --. .. - .- .-..

Sky Morey
Chief Architect, DEG
913.951.3104 (direct) | 816.304.4341 (mobile)

www.DEGdigital.com<http://www.degdigital.com/> | 913.498.9988 (office) | 
@smorey2<http://twitter.com/degdigital>

_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to