Erlang&#x27;s M:N scheduling isn&#x27;t what makes it slow.  And not all of Erlang is slow either for that matter.<p>The reason it works for Erlang is becuase M:N is the <i>only</i> model. There&#x27;s no alternate supported model trying to maintain some competing set of semantics to muck up the works.<p>You can induce problems by running code that doesn&#x27;t fit inside the model such as NIF code. But as of R18 you can consume a separately maintained threadpool for that stuff.<p>When the paradigms collide there are sometimes bizarre non-deterministic interactions, but there&#x27;s nothing wrong with M:N scheduling, craploads of core infrastructure systems are running on M:N scheduling kernels&#x2F;runtimes.<p>If you&#x27;ve used money in any way whatsoever ever at any point in your life you&#x27;ve critically depended on this &quot;fad&quot; and will continue to do so for a long, long, long time.