Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


courses:high_performance_computing:producer_consumer

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
courses:high_performance_computing:producer_consumer [2019/07/27 22:56]
odoronin
courses:high_performance_computing:producer_consumer [2019/09/09 16:44] (current)
odoronin
Line 20: Line 20:
   - Число потоков consumer   - Число потоков consumer
   - Верхний предел сна consumer в миллисекундах   - Верхний предел сна consumer в миллисекундах
 +
 +
 +Так-же необходимо реализовать поддержку ключа --debug, при использовании которого каждый consumer-поток будет выводить пару (tid, psum), где tid реализуется с помощью функции get_tid(), а psum это сумма которую посчитал поток. Вывод значений psum происходит при каждом изменении.
 +
 +Функция get_tid() возвращает идентификатор потока. Идентификатор потока это не проста pthread_self(),​ а уникальное для каждого потока число в диапозоне от 1 .. 3+N
  
 В поток вывода должно попадать только результирующее значение,​ по умолчанию никакой отладочной или запросной информации выводиться не должно. В поток вывода должно попадать только результирующее значение,​ по умолчанию никакой отладочной или запросной информации выводиться не должно.
Line 48: Line 53:
   // return aggregated sum of values   // return aggregated sum of values
  
 +  return 0;
 +}
 +
 +int get_tid() {
 +  // 1 to 3+N thread ID
 +  ​
   return 0;   return 0;
 } }
courses/high_performance_computing/producer_consumer.txt · Last modified: 2019/09/09 16:44 by odoronin