396037fa72aa9fd6e61454613319ef77b8731d46
[ikiwiki.git] / doc / todo / multi-thread_ikiwiki.mdwn
1 [[!tag wishlist]]
2
3 [My ikiwiki instance](http://www.ipol.im/) is quite heavy. 674M of data in the source repo, 1.1G in its .git folder.
4 Lots of \[[!img ]] (~2200), lots of \[[!teximg ]] (~2700). A complete rebuild takes 10 minutes.
5
6 We could use a big machine, with plenty of CPUs. Could some multi-threading support be added to ikiwiki, by forking out all the external heavy  plugins (imagemagick, tex, ...) and/or by processing pages in parallel?
7
8 Disclaimer: I know nothing of the Perl approach to parallel processing.
9
10 > I agree that it would be lovely to be able to use multiple processors to speed up rebuilds on big sites (I have a big site myself), but, taking a quick look at what Perl threads entails, and taking into acount what I've seen of the code of IkiWiki, it would take a massive rewrite to make IkiWiki thread-safe - the API would have to be completely rewritten - and then more work again to introduce threading itself.  So my unofficial humble opinion is that it's unlikely to be done.
11 > Which is a pity, and I hope I'm mistaken about it.
12 > --[[KathrynAndersen]]