Changeset: 091a952d91aa for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=091a952d91aa
Modified Files:
monetdb5/extras/crackers/crackers_holistic.c
monetdb5/mal/mal_profiler.c
Branch: holindex
Log Message:
Use a thread pool that executes concurrently as many jobs as the number of idle
cores.
diffs (39 lines):
diff --git a/monetdb5/extras/crackers/crackers_holistic.c
b/monetdb5/extras/crackers/crackers_holistic.c
--- a/monetdb5/extras/crackers/crackers_holistic.c
+++ b/monetdb5/extras/crackers/crackers_holistic.c
@@ -36,20 +36,12 @@ IdleFuncPtr IdleFunc;
str
CRKinitHolistic(int *ret)
{
- int i,j;
- char* p;
IdleFunc=&CRKrandomCrack;
- p = getenv("HOLTHREADS");
- if (p == NULL)
- j = 0;
- else
- j = atoi(p);
- idletime_thread = GDKzalloc(j * sizeof(*idletime_thread));
+ idletime_thread = GDKzalloc(sizeof(*idletime_thread));
cpuload_thread = GDKzalloc(sizeof(*cpuload_thread));
MT_lock_init(&frequencylock, "FrequencyStruct");
MT_lock_init(&CRKIndexLock, "Cracker Index Lock");
- for(i=0;i<j;i++)
- MT_create_thread(&idletime_thread[i],(void (*)(void
*))HeartbeatCPUload, IdleFunc, MT_THR_JOINABLE);
+ MT_create_thread(idletime_thread,(void (*)(void *))HeartbeatCPUload,
IdleFunc, MT_THR_JOINABLE);
MT_create_thread(cpuload_thread,(void (*)(void
*))HeartbeatCPUload_total, NULL, MT_THR_JOINABLE);
*ret = 0;
return MAL_SUCCEED;
diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c
--- a/monetdb5/mal/mal_profiler.c
+++ b/monetdb5/mal/mal_profiler.c
@@ -1356,8 +1356,7 @@ void HeartbeatCPUload(void *arg)
n = max_threads - N;
(void) n;
t0 = GDKusec();
- //MRschedule(n, NULL, IdleFunc);
- IdleFunc(NULL);
+ MRschedule(n, NULL, IdleFunc);
t1 = GDKusec();
t = 10000 - (t1 - t0);
if (t < 0 )
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list