[PATCH] Add a lock() function in PassRegistry to speed up multi-thread synchronization.

Erik Eckstein eeckstein at apple.com
Fri Feb 27 07:21:23 PST 2015


Hi Owen, Chandler,

> Do you mean with a release *+* asserts build?


Yes, sorry I wrote it wrong.

I think initial description was not very good. I'll try to explailn again: there are two issues

1. multithread-performance problem in the assert build: I understand that assert builds are slower than release builds, but in this case it's a factor of 4 when running with 4 threads, i.e. the multithreaded version is slower than the single-threaded version! This makes the asserts build useless for my purpose.

2. Even in the release build there is a performance penalty of about 5% because of the mutex.

With my proposed patch both problems would be solved.


http://reviews.llvm.org/D7787

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list