Hi Krzysztof,
If you have 10K of elements in your pages (with or without directives) I would advise to split up the page anyhow. Even without angular that would be slow.
Angular hands you to tools to do this fairly easy. the ngInclude you mentioned helps. Probably you need some routing too (ngRouter for simple cases, ui-router if you can't wait for ngComponentRouter)
ngIf can also help a bit, but it takes out nodes, that the browser has to process anyhow.
Regards
Sander