[Omp] OpenMP for transport protocols like TCP/SCTP

Alexander Bubnov alexander.bubnov at gmail.com
Tue Jul 31 04:18:48 PDT 2007


Hello, all!
I am support SCTP module. Now, some customers would like to get
optimization of SCTP for core due processors/multi-processor
architecture.
I have not had big knowledge in that scope. I would like to know your
opinion. Probably, someone has such experience.

As my opinion:
At the moment I identified 2 possible solutions. First one is to use
POSIX threads and the second one to use OpenMP. There are may be some
other ways but I haven't found them yet.

I do not want to hear about how to implement. I would like to know
which way (pthreads or OpenMP) can get max performance under core due
processors/multi-processor architecture and future trends.

Note, now, SCTP works as one thread and one process.
Requirement: SCTP should work under *NIX platforms.

Simply, If I use pthreads I can parallel each call of SCTP user to
SCTP in case a SCTP user (an application which uses SCTP) would like
to connect to other side. I.e. one thread for each user. And I can
restrict number of threads, for example, in configuration file in
order to a programmer which uses SCTP module for yours applications
can increase or decrease number of threads under different
architecture to get best performance.

In case of OpenMP I can have one thread for all SCTP users
(applications). And inside this thread I can parallel some independent
work. I.e. in this case I can make work of one thread faster.

I guess pthreads sound better that OpenMP. Do you agree?
One more question please... can I mix OpenMP and pthreads in C programs?

Thanks in advance.


More information about the Omp mailing list