> My Mac build now works with the files that I have thrown at it, unless
> I enable openmp. In that case it usually fails in lines2fsts, but at
> what amounts to a random place, as I get differing numbers of lines
> processed before it fails.

Yes, because lines are processed in parallel, and that's not deterministic.

> I know that you did some magic to eliminate some of the "terminate
> called after throwing an instance of 'char*'" Is it possible to do it
> a bit more, so that exceptions thrown during processing are at least
> logged before termination?

We can try to add more exception handlers (or you can try to just add
one yourself in ocr-commands in the OMP for loop in main_lines2fsts).
Also, even with OpenMP, you can compile unoptimized and with debugging
symbols and catch the place where the exception gets thrown; that way,
you might be able to figure out where it's coming from.

> Up to this point I have been diagnosing problems by running the non-
> openmp version and seeing where it failed. But now that the non-openmp
> version always works, and the openmp version usually fails, this
> tactic is useless.

If the non-openmp version doesn't throw the exception and the openmp
version does, there's something weird going on.  We aren't seeing this
on Ubuntu, so it might even be a bug in the Mac OpenMP implementation.

Tom

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"ocropus" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/ocropus?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to