Lichess Analysis Board with Stockfish 8 in Asm.js
lichess.org
lichess.org
PNaCl required almost no modifications to Stockfish (https://github.com/niklasf/stockfish.pexe), supports multithreading and is still the fastest.
WASM and asm.js require the same patches (https://github.com/niklasf/stockfish.js). Most notably WASM does not yet have multi-threading. In the original Stockfish one dedicated thread is listening for new commands. Instead now the main search thread (since it's the only thread) has to check for new commands from time to time, which costs a bit of performance.
(maybe someone more familiar with the lichess architecture could go into a bit more depth here)