Disclaimer, I only read the first book.<p>Depends what you want from it. I used the first book to study for my Bachelor&#x27;s degree final state examinations, and it served me well :-)<p>In other words, yes it is very academical, in the truest sense of the word.<p>From what you say, that you want it to &quot;mention of pipeline stalls, designing for cache performance, branch prediction, multithreading, etc.&quot;, you might find better use of Andrew S. Tanenbaum books. I have only read his Computer Networks [1], but it has saved me at least 14 hours of boring lectures at uni, and helped me with some protocols work. He still does research in distributed OS-es, so  would hope, that rest of his books would have same amount of readability and usefulness as the one I have read :)<p>Back to Knuth, if think you have no use in mathematical formalism, or college math in general, you will probably find it little more than intellectual entertainment.<p>There are of course areas where having formal theory of a thing is beneficial when programming, even if you yourself don&#x27;t apply it (i.e. the chapter on random numbers seems like something everybody touching any code related to security should read, i.m.o)<p>But even then, if you suddenly need to learn more math theory, there are probably better sources than Knuth.<p>As somebody who finished my Msc already, I like it as my intellectual entertainment just fine :)<p>[1] <a href="http:&#x2F;&#x2F;www.mypearsonstore.com&#x2F;bookstore&#x2F;computer-networks-9780132126953" rel="nofollow">http:&#x2F;&#x2F;www.mypearsonstore.com&#x2F;bookstore&#x2F;computer-networks-97...</a>