Minha experiência pessoal é que o HPC exige um conjunto tão amplo de habilidades que é muito difícil de fazer em apenas um livro, receita, curso universitário. Considere que o HPC não se refere à programação de grandes máquinas ou à construção de um cluster, mas à solução de grandes problemas científicos na ponta da computação.
Não sei se todos concordariam, mas acho que uma lista de áreas envolvidas no HPC poderia ser:
Cada uma dessas áreas é imensamente grande e há tanto conhecimento que é difícil se apossar de tudo antes de tentar fazer qualquer coisa!
No meu caso, comecei de um canto da engenharia e desenvolvi lentamente a experiência e uma rede de colaboração. No começo, eu só tinha um problema de engenharia / matemática aplicada que queria resolver; daí mudei para a programação, para obter mais desempenho através de computadores mais poderosos, para análises numéricas, para algoritmos avançados, para computadores paralelos, para algoritmos paralelos. , para computadores ainda maiores, para um modelo científico mais completo e, eventualmente, para um novo problema e iterando novamente. Se eu olhar para trás, tentar entender e resolver meu primeiro problema foi o que elaborou meu plano de estudo. Ter um supervisor que possa mantê-lo no caminho certo também ajuda muito; caso contrário, tenha cuidado para não perder de vista seu objetivo final (no meu caso, esse era o problema científico que eu tinha em mãos).
Se eu precisar citar uma coisa que realmente faz diferença ao seguir o caminho do HPC, é conhecer pessoas de outras áreas, trocar idéias e tirar proveito do conhecimento distribuído da comunidade. Além disso, é importante não ter muito medo de ser abertamente ingênuo e fazer coisas tolas. Os primeiros passos são sempre difíceis e os mais importantes!