24 Commits

Author SHA1 Message Date
Julian Wolf
f9127b2d16 Added HPX task system option 2016-06-18 16:36:41 +02:00
evghenii
8745888ce9 merged with master 2014-08-11 10:04:54 +02:00
jbrodman
d049746585 Add proper cast to eliminate size mismatch warning 2014-07-10 03:11:46 -07:00
evghenii
69f3898a61 Merge branch 'master' into nvptx_merge 2014-07-07 16:30:12 +02:00
motiz88
5da05b365f Small fixes for TBB on windows
Changed an #ifdef ISPC_IS_WINDOWS in the definition of TaskInfo to #ifdef ISPC_USE_CONCRT, and fixed two calls to taskCount() that were missing parentheses.
2014-06-05 22:06:09 +03:00
Evghenii
93849370b1 added cpu compilation path 2014-02-20 12:57:50 +01:00
Ilia Filippov
7bf64bc490 changes in examples (windows) 2013-12-19 21:13:09 +04:00
Dmitry Babokin
6d51987e67 Merge pull request #642 from egaburov/launch3d
concept of 3d tasking
2013-12-17 08:40:07 -08:00
evghenii
c06ec92d0d added commas, added multi-dimensional tasking to mandelbrot_tasks & removed mandelbrot_task3d. Also adjusted documentaiton a bit 2013-12-13 11:49:11 +01:00
Dmitry Babokin
5531586c35 Fix for existing semaphore problem 2013-11-20 19:19:15 +04:00
Dmitry Babokin
40da411fa5 Fix task system dignostic to report real reason of the symaphore allocation fail 2013-11-20 17:22:50 +04:00
Evghenii
383e804ec1 changed notation form taskIndex1,2,3 -> taskIndex0,1,2 2013-10-24 17:20:56 +02:00
egaburov
c5fc47cc19 tasksys cleaning 2013-10-24 14:09:46 +02:00
Evghenii
43761173ec changed notation, task[Index,Count]_[x,y,z] -> task[Index,Count][1,2,3]. Change launch <<< nx,ny,nz >>> into launch [nx,ny,nz] or equivalent launch [nz][ny][nx]. Programmer can pick the one the is liked the most 2013-10-24 13:16:23 +02:00
egaburov
e6c8765891 fixed tasksys.cpp for 3d tasking 2013-10-23 13:18:22 +02:00
egaburov
ade8751442 taskIndex_x,y,z are passed to the task 2013-10-23 08:39:17 +02:00
Dmitry Babokin
fa93cb7d0b InterlockedAdd -> InterlockedExchangeAdd for better portability (InterlockedAdd is not always supported) 2013-07-29 22:46:36 -07:00
Matt Pharr
b007bba59f Replace inline assembly in task system with equivalent gcc intrinsics.
gcc/icc build only: the Windows build still uses the Win32 calls for
these.
2013-07-19 23:07:24 -07:00
Ilia Filippov
fd7f87b55e Supporting perf.py on Windows and some small corrections in it 2013-07-02 19:23:18 +04:00
Matt Pharr
9002837750 Remove incorrect assert in tasksys.cpp 2012-10-15 10:43:46 -07:00
Jean-Luc Duprat
09bb36f58c Updated the task system in the example directory to support:
Cilk (cilk_for), OpenMP (#pragma omp parallel for), TBB(tbb::task_group and tbb::parallel_for)
as well as a new pthreads-based model that fully subscribes the machine (good for KNC).
With major contributions from Ingo Wald and James Brodman.
2012-08-28 11:13:12 -07:00
Matt Pharr
950f86200b Fix examples/tasksys.cpp to compile with 32-bit targets.
(Change a cmpxchgd to cmpxchl.)  Note that a number of the examples
still don't work with 32-bit compilation, why still TBD.
2012-01-30 15:03:54 -08:00
Matt Pharr
0b02f94988 Task system performance tweaks.
Switch back to GCD on OSX.
Increase TaskInfo allocation count.
This fixes the regression with deferred on AVX (from 17x to 25x
  again with 4 cores.)
2011-10-01 08:04:09 -07:00
Matt Pharr
cb7976bbf6 Added updated task launch implementation that now tracks task groups.
Within each function that launches tasks, we now can easily track which
tasks that function launched, so that the sync at the end of the function
can just sync on the tasks launched by that function (not all tasks
launched by all functions.)

Implementing this led to a rework of the task system API that ispc generates
code to call; the example task systems in examples/tasksys.cpp have been
updated to conform to this API.  (The updated API is also documented in
the ispc user's guide.)

As part of this, "launch[n]" syntax was added to launch a number of tasks
in a single launch statement, rather than requiring a loop over 'n' to
launch n tasks.

This commit thus fixes issue #84 (enhancement to launch multiple tasks from
a single launch statement) as well as issue #105 (recursive task launches
were broken).
2011-09-30 11:20:53 -07:00