On May 12, 2010, at 1:48 PM, Hanjun Kim wrote:

> I am working on parallelizing my sequential program using OpenMPI.
> Although I got performance speedup using many threads, there was
> slowdown on a small number of threads like 4 threads.
> I found that it is because getc worked much slower than sequential
> version. Does OpenMPI override or wrap getc function?

No.

> To find the cause, I added mpi.h to the program and compiled it with
> mpicc. There are two versions on the program;
> 1. The sequential program without MPI_Init_thread and MPI_Finalize.
> 2. The sequential program with MPI_Init_thread and MPI_Finalize.
> Version 2 was 4x slower than version 1. I think it is because of slow
> getc. Does MPI_Init_thread have some relation with the getc function
> call?

Not that I'm aware of.  Perhaps something about linking in threading libraries 
changes getc...?

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to