I asked this question some years back and have yet to get an answer from anyone. It's a two part question on software development.
First, when a new CPU / GPU is designed, how does the internal code get created that enables it to work? Second, when a new program language is created, how does the creator know it will work with certain CPU / GPU / ASIC et cetera? In both cases it's not like building a mechanical device that can be visually inspected at each step to see if the pieces work.
First, when a new CPU / GPU is designed, how does the internal code get created that enables it to work? Second, when a new program language is created, how does the creator know it will work with certain CPU / GPU / ASIC et cetera? In both cases it's not like building a mechanical device that can be visually inspected at each step to see if the pieces work.