Hi,

I'm mostly sure that the crashes we are seeing in UFRaw are related to OpenMP.

I've just added glib/gdk thread support to CVS, but I'm not really
sure it is needed. It seems that the current OpenMP implementation in
UFRaw is careful not to call most GTK functions in parallel. The ones
that are not protected seem really naive, like gdk_pixbuf_get_width().

I've also tried replacing calls to g_idle_add_full() with
gdk_threads_add_idle_full(), but it crashes immediately. I really
don't understand how OpenMP and GDK's threads interact. Maybe we need
to set gdk_threads_set_lock_functions() to use OpenMP locks.

I'm also wondering about our parallel calls to cmsDoTransform(). I
think lcms requires the use of different transforms in different
threads, but I didn't see any problems in this area. All the crashes
seem to be glib related.

Any help on these issues would be most welcome,
Udi

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
ufraw-devel mailing list
ufraw-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ufraw-devel

Reply via email to