▲ | jlokier 3 days ago | |||||||||||||||||||||||||||||||
> How on earth can it be that terrible [>20 minutes] compared to Deno? QuickJS uses a bytecode interpreter (like Python, famously slow), and is optimised for simplicity and correctness. Whereas Deno uses a JIT compiler (like Java, .NET and WASM). Deno uses the same JIT compiler as Chrome, one of the most heavily-optimised in the world. That doesn't normally lead to such a large factor in time difference, but it explains most of it, and depending on the type of code being run, it could explain all of it in this case. QuickJIT (a fork of QuickJS that uses TCC for JIT) might yield better results, but still slower than Deno. | ||||||||||||||||||||||||||||||||
▲ | ynx 3 days ago | parent | next [-] | |||||||||||||||||||||||||||||||
JIT is still banned by policy on a LOT of mobile devices, meaning that previous usage of yt-dlp on mobile is now effectively unsupportable. | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
▲ | bArray 3 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||
My concern is either that QuickJS is something like 100x slower, or that even when using Deno, the download experience will be insanely slow. In my mind, an acceptable time for users might be 30 seconds (somewhat similar to watching an ad). If QuickJS is taking >20 minutes, then it is some 40x slower? Seems very high? > QuickJIT (a fork of QuickJS that uses TCC for JIT) might yield better results, but still slower than Deno. Interesting, not come across it before. Running C code seems like an insane workaround from a security perspective. |