From 33d217f3dcc7862445ee9d28a60a81fc7cb7730b Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Wed, 17 Jun 2009 19:26:17 +0200 Subject: [PATCH] communication techniques bench: BUGFIX * -s really make the threads to be on a shared cache --- communication_techniques/src/main.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/communication_techniques/src/main.c b/communication_techniques/src/main.c index fa34f72..1cdada4 100644 --- a/communication_techniques/src/main.c +++ b/communication_techniques/src/main.c @@ -166,6 +166,20 @@ void *producer(void *cont_ptr_void) return NULL; } } + else + { + pthread_t tid; + cpu_set_t cpuset; + + tid = pthread_self(); + CPU_ZERO(&cpuset); + CPU_SET(2, &cpuset); + if (pthread_setaffinity_np(tid, sizeof(cpu_set_t), &cpuset)) + { + perror("pthread_setaffinity_np"); + return NULL; + } + } printf("Registering: %p !\n", (void*) pthread_self()); add_sender(); k = cont_ptr_void; @@ -207,7 +221,7 @@ void *receptor(void *a) tid = pthread_self(); CPU_ZERO(&cpuset); - CPU_SET(1, &cpuset); + CPU_SET(0, &cpuset); if (pthread_setaffinity_np(tid, sizeof(cpu_set_t), &cpuset)) { perror("pthread_setaffinity_np");