Skip to content
  • Christoph Cullmann's avatar
    improve threading · f2d2ede7
    Christoph Cullmann authored
    1) use a worklist approach => better spreading of search work
    2) use idea thread count for number of runnables => higher parallelism
    3) avoid that the QRegularExpression is shared between threads (without this, e.g. 16 vs. 2 threads is no real difference)
    4) deactive qmimedb atm => creates QRegularExpression internally => leads to same locking hell :/
    
    with this, in a linux.git clone, searching for Linus takes:
    
    1) with 2 threads: ~4.5 seconds
    2) with 16 threads: ~0.5 seconds :P
    f2d2ede7