Commit Graph

67 Commits (9bd84e73f47f19c306b98585c0174139e849a8a2)

Author SHA1 Message Date
Slava Pestov 75560699ea Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object> 2010-12-25 16:55:36 -08:00
Doug Coleman 67c37591ca Remove <uint> *uint and friends. Hopefully remove the last usages of these words 2010-10-25 15:54:42 -05:00
Doug Coleman 4ca9bd0bba Remove usages of <void*> and *void* 2010-10-25 13:22:50 -05:00
Doug Coleman 1f57dc326e Remove many uses of <int> and *int etc 2010-10-25 12:49:12 -05:00
Joe Groff bbe156f3de cuda.gl: with-mapped-cuda-buffer helper word 2010-05-25 00:37:15 -07:00
Joe Groff ee995b4770 cuda.gl: cuda-buffer helper object that pairs a buffer with its attached CUDA resource 2010-05-24 22:57:25 -07:00
Joe Groff 9fccc38994 cuda.contexts, cuda.gl: factor out set-up-cuda-context and clean-up-cuda-context so they can be used by objects that own a cuda context (separate from with-cuda-context) 2010-05-24 22:13:15 -07:00
Joe Groff ff748b5c9f cuda.libraries: make grid tuple read-only, grid-dim/block-dim foldable, and CUDA-FUNCTION: words inline so that kernel call sites can optimize 2010-05-20 18:10:17 -07:00
Joe Groff 2ad382865e cuda.libraries, cuda.syntax: support for both 32- and 64-bit CUDA pointer abis. make CUDA-LIBRARY: read the abi as part of the library definition 2010-05-20 17:56:45 -07:00
Joe Groff 0d04406a41 cuda.libraries: rework parameter passing to fill entire parameter space in one API call 2010-05-20 17:23:47 -07:00
Joe Groff ca1426096a cuda.libraries: scrape out some useless code 2010-05-20 15:57:23 -07:00
Joe Groff efe7e94a07 cuda.libraries, cuda.syntax: factor generated CUDA-FUNCTION: word bodies into a "cuda-invoke" macro; add CUDA-GLOBAL: for referencing global symbols 2010-05-20 15:45:35 -07:00
Joe Groff f0a7f039bd cuda.libraries: rename "function-launcher" to "grid", 2<<< to <grid>, 3<<< to <grid-shared>, 4<<< to <grid-shared-stream> 2010-05-20 14:59:27 -07:00
Joe Groff 1a3fd1dc8c improve cuda library organization 2010-05-20 14:40:26 -07:00
Joe Groff e286a8daef cuda.devices: factor "context-device cuda-device-properties" into a "context-device-properties" word 2010-05-16 17:16:27 -07:00
Joe Groff a0f28d4402 cuda.gl.ffi: add missing LIBRARY: cuda befor ffi function defs 2010-05-15 22:33:03 -07:00
Joe Groff 5f909cf443 cuda.gl: enum>number the flags argument to gl-buffer>resource so that single CUDA flag symbols can be used as arguments 2010-05-15 16:26:49 -07:00
Joe Groff c1dbce85bb cuda: move init-cuda from cuda.utils 2010-05-15 15:28:02 -07:00
Joe Groff 896cd58451 cuda.demos.prefix-sum: add init-cuda 2010-05-15 15:01:32 -07:00
Joe Groff 22e853ecb0 cuda: more API cleanups:
- remove useless with-cuda and with-cuda-program combinators
	- eliminate redundant cuda-device, cuda-context variables
	- rearrange arguments of with-*cuda-context to ( device flags quot -- )
	- don't pass context to with-cuda-context quot
	- add context-device word to ask for current device
2010-05-15 11:47:19 -07:00
Joe Groff e32e0f1423 cuda.gl: add free-resource word to release interop handles 2010-05-14 16:17:03 -07:00
Joe Groff f9a8e90c41 cuda: add "cuda.gl" vocab with words for cuda/opengl/gpu interop 2010-05-14 16:00:27 -07:00
Joe Groff afdced0183 cuda: in with-cuda-context, sync context when cleaning up so that destroying context doesn't fail due to asynchronous errors 2010-05-14 16:00:27 -07:00
Joe Groff 4eb55a5c3b Merge branch 'master' of factorcode.org:/git/factor 2010-05-12 13:49:02 -07:00
Joe Groff 860e871fe6 new cuda.types vocab containing CUDA vector types (int2, float4, etc.) with CUDA alignment 2010-05-12 13:48:44 -07:00
Slava Pestov d1e2554ebf cuda.utils: fix load error 2010-05-10 20:50:28 -04:00
Joe Groff 6d30ce485c cuda.utils: add "sync-context" word 2010-05-10 15:06:15 -07:00
Joe Groff 077cd0397b cuda.devices: fix distribute-jobs to look only at width of maxThreadsDim 2010-05-07 18:15:37 -07:00
Joe Groff 6d41ea32f5 cuda.devices: have distribute-jobs construct a launcher with the calculated grid-dim, block-dim, and shared-size 2010-05-07 18:09:21 -07:00
Joe Groff 5a980b58cb remove cuda.constants; it's better to get those values from device-properties 2010-05-07 18:03:30 -07:00
Joe Groff f26a5836e6 cuda.devices: "distribute-jobs" utility word that determines grid and block size for a job based on per-thread shared memory requirements and max block size 2010-05-07 18:02:42 -07:00
Joe Groff 097100cb12 cuda.utils: foo <c-object> ... foo memory>struct == foo <struct> 2010-05-07 17:18:08 -07:00
Joe Groff a228e575a5 cdua.devices: remove redundant init-cuda calls 2010-05-07 17:16:28 -07:00
Joe Groff fb619ec928 cuda: fix using single integer as grid size 2010-05-05 19:07:39 -07:00
Joe Groff ae37cc730b cuda.memory: dependencies 2010-05-05 17:38:59 -07:00
Joe Groff 1d916246b0 cuda: rearrange function-launcher grid and block dim to be in the right order 2010-05-05 17:38:37 -07:00
Joe Groff 7c89fb2438 add cuda.constants vocab 2010-05-04 19:49:44 -07:00
Joe Groff 76512260b0 cuda.memory, cuda.syntax: inline some more words, add cuda-malloc-type word that allocates n*heap-size bytes of memory 2010-05-04 19:46:53 -07:00
Joe Groff 152da8c93c cuda: streamline memory api 2010-05-03 18:18:10 -07:00
Doug Coleman cc546c3a94 init-cuda in a couple more places... 2010-04-23 23:19:26 -05:00
Doug Coleman 8d76f2e612 Sprinkle init-cuda everywhere you could conceivably need it! 2010-04-23 23:17:47 -05:00
Doug Coleman 095763bcee Move cuda.devices word out of cuda.utils 2010-04-23 18:27:13 -05:00
Doug Coleman 8323332838 Compile the .cu file with a relative pathname instead of absolute 2010-04-23 15:06:43 -05:00
Doug Coleman b8c10dc2cd Add using 2010-04-23 14:43:48 -05:00
Doug Coleman b34c75a6a3 move cuda.utils library words to cuda.libraries 2010-04-23 14:43:13 -05:00
Doug Coleman 8ae600124c remove init-cuda from a combinator because it's a startup-hook now 2010-04-23 14:29:24 -05:00
Doug Coleman 656f8987a1 Run hello-world on each CUDA device. fix a bug with returning the hello world string. add with-each-cuda-device combinator to run a program on each device. add an init-hook for cuda-init 2010-04-23 14:29:24 -05:00
Doug Coleman d6036b6d5b make host>device only take one parameter, add 2<<< for calling cuda functions where shared-memory is 0, simplify hello-world example 2010-04-23 14:29:23 -05:00
Joe Groff a848b4b0c5 Merge branch 'symbolic-enums' of git://github.com/erikcharlebois/factor 2010-04-20 16:43:58 -07:00
Joe Groff b71933f4d7 cuda.ptx: better representation of operands 2010-04-20 13:51:10 -07:00