DonFerrari said: How would you explain then that among all Devs on PS3 ND were the ones having more efficiency on the development? https://news.ycombinator.com/item?id=9813111one piece of evidence of ND using assembly and other means to "manually tweak" the code to the level of counting cycles to match. |
They optimized their workload for the Cells SPE's more effectively than any other developer.
It is easy to utilize all the SPE's by making your workload parallel, it's another keeping them fed constantly, which is where Naughty Dog showed it's prowess.
Your link backs up the evidence I provided earlier that they used C++.
Assembly is not machine code.
the-pi-guy said:
Just wanted to point out that technically, you can combine C++ with in-line Assembly (which is essentially readable machine code), this link has an example of what that'd look like: https://www.cs.uaf.edu/2012/fall/cs301/lecture/10_01_link_with_cpp.html It's still not something that most developers would want to do, because the compiler is usually going to write better optimized code. But, Ferrari's link here actually purports that Naughty Dog did use assembly with C++: "instead dedicated their efforts to rebuilding the tools, engine, and game in C++ and assembly language."
It also mentions in there that they used Assembly and C++. |
Assembly isn't machine code, there is still a conversion that takes place by using an "Assembler". - If the original argument was about Assembly, then my original statements would indeed be false.
https://en.wikipedia.org/wiki/Assembly_language#Assembler
https://pediaa.com/what-is-the-difference-between-machine-code-and-assembly-language/
Many developers will leverage assembly when targeting low-level API's anyway for parts of their code base.
--::{PC Gaming Master Race}::--