HPC,英文全称为High Performance Computing ——高性能计算,这是近几年来随着深度学习、AIGC、以及大模型的崛起,才逐渐进入人们视野的计算领域。由于深度学习对算力的需求非常旺盛,一般的计算已经完全达不到要求,只有高性能计算才能对其提供持久而稳定的保障。
那么高性能计算是不是一个好的就业方向?高性能计算(HPC)目前的就业情况如何?
一起来看——
高性能计算领域是一个具有长期发展潜力的领域,非常值得作为职业道路的选择。以下是原因。
首先,高性能计算领域相对较为复杂,需要深入研究和专业知识。在这个领域,有许多深入的研究方向和技术可供探索。这意味着个人经验和技能可以不断积累。如果你在这个领域从事几年甚至几十年的工作,你的个人技术能力和经验的价值将不断提高。这是一个积极的方面,因为如果你希望长期从事某个行业,你需要具备足够的专业知识和经验。这样,在未来十年,你能够做到的事情肯定比那些刚入行的人更好,这也意味着你的价值将会更高。
其次,考虑到工作是否可能被机器替代的问题,如现在的GPT和无代码编程等技术的兴起,AI辅助和自动化无疑是一个趋势。这些技术有可能取代一些重复性和低技术门槛的劳动。
但就目前来看,高性能计算领域依赖于广泛的专业知识,很难被完全替代。因为该领域的知识要求相对较高,目前还没有一个智能系统能够完全取代人类在高性能计算领域的工作。因此,从这个角度来看,我认为高性能计算领域适合那些对底层技术有浓厚兴趣且希望从事长期职业的人。
接下来,让我们举一个具体例子来说明。我一直认为高性能计算的工作可以类比为底层框架的开发,或者说作为框架的中间人。例如,想象一下一边是上层应用,如深度神经网络、解方程等,而另一边则是针对不同硬件的优化,包括CPU、GPU、NPNPFPJ、国产重核、大规模病毒计算机、超算等。如果直接将这些应用放在不同的硬件上运行,往往无法达到最佳性能。
举个简单的例子,大家可能都写过排序算法。在下面是对原文的改写,将演讲稿转换为书面文案:
从个人角度出发,我认为高性能计算领域是一个具有长期可发展性的领域,非常值得作为一条长期的职业道路。为什么这么说呢?
首先,这个领域相当具有挑战性,它不是简单的领域,而是可以深入研究的广阔领域。其中的好处是,个人的经验是可以累积的。在这个领域工作几年、几十年甚至更长时间,个人的技术能力和经验都会不断提升,这是一件非常好的事情。因为如果我们希望长期从事某个行业,它需要足够的深度,这样我们在十年后才能比那些刚入行的人做得更好,这就意味着你的价值会更高。这是个人积累的结果。
其次,我们需要考虑的是,我的工作是否有可能被机器取代,比如现在非常火的GPT,无代码编程等技术正在兴起,这些技术将会替代一些重复性低的工作,但从目前来看,高性能计算领域很难完全被自动化或算法替代。因为这个领域的知识要求相对广泛,很难有一个智能系统完全取代我们的工作,这是相当困难的。
因此,从这两个角度来看,我认为高性能计算是适合那些对底层技术有兴趣的人从事的长期职业方向。这是我的个人观点。
接下来,举一个具体例子来说明。我一直认为在高性能计算领域,我们可以充当底层框架的构建者,扮演硬件和应用之间的桥梁角色。
例如,你可以想象一下,一边是高层应用,比如深度神经网络或解方程等应用,另一边则是针对不同硬件的优化,包括CPU、GPU、NPNPFPJ甚至国产的重核、大规模并行计算机等。直接将这些应用放到特定硬件上,很多时候是无法高效运行的。
举个简单的例子,我们都写过排序算法吧,当数据量较小时,冒泡排序等简单算法的速度还很快。但当数据量变大时当数据量变大时,简单的排序算法就显得力不从心了。这时候,我们就需要使用更高效的排序算法,如快速排序、归并排序等,以提高排序的速度和效率。
在高性能计算领域,我们可以扮演这样的角色,通过对底层硬件和应用的深入了解,设计和优化算法,以实现更高的性能和效率。我们可以针对不同的硬件架构,对算法进行优化,充分利用硬件的特性和并行性。通过合理的任务划分和调度,最大化利用计算资源,实现高性能计算的目标。
此外,高性能计算还广泛应用于科学研究、工程模拟、天气预报、医学影像处理等领域。这些领域对计算资源和算法的需求非常高,需要高性能计算来处理大规模的数据和复杂的计算任务。作为高性能计算领域的专业人员,我们可以参与并推动这些领域的发展,为人类社会的进步做出贡献。
综上所述,高性能计算领域具有长期可发展性,因为它具有挑战性、难以被完全自动化取代,并且在科学研究和工程领域有广泛应用。作为从事高性能计算的人员,我们可以不断提升自己的技术能力和经验,充当底层框架的构建者,设计和优化算法,实现高性能计算的目标,并为人类社会的进步贡献一份力量。
所以高性能计算前景非常好,但是因为其历史原因以及学习资料的获取难度,现在HPC人才空缺
一是工业界对于人才的需求越来越旺盛,学校的培养不仅跟不上,而且这个鸿沟目前的状态是越来越大。几乎所有的公司都在抱怨,这个领域的人才不够用。出现百万年薪还在抢人才,还抢不到的情况。
二是高校内缺乏系统的师资以及实践环境,大部分老师都缺乏工程界经验,更谈不上培养高性能计算相关的专业人才。
三是国内超算生态相比国外较为落后,缺乏应用场景。
但是2023年4月以来,科技部确定超算互联网的部署,一大重点就是建设超算生态,培养更多超算相关的科研人才。
那么目前高性能计算的薪资水平是怎样的呢?
一般来说,硕士学历,或者非常拔尖的本科生,一般能拿到平均30-50万左右的年薪。博士更多一些,基本80-100W+。
对于毕业生来说,大概需要多长时间能成长为一个优秀的HPC人才呢?
一般来说,如果全靠自己摸索,本科毕业大致需要5-6年,硕士毕业在3年左右,博士则是1-2年。不过,人才成长的速度会越来越快。
现在,在这里,猿代码科技(https://www.ydma.com)为您准备了一份高性能计算培训课程,涵盖CPU、GPU以及超算运维。其中尤其推荐的是猿代码-高性能计算从新手到大师系列课程(CPU和GPU并行优化)
这是由国内顶尖科研院所专家及知名企业工程师合作研发的高性能计算专项课程,涵盖高性能计算之并行计算等多个方面,包括CPU并行计算实战课程、GPU并行计算实战课程以及超算运维等。您将有机会通过工程化实战项目来学习所学知识,并与来自国内顶级专家及工程师近距离合作与学习。
你将学会:
1、进一步完善计算机体系结构的理论基础,比如计算机是怎么做计算的,一个计算从把指令放出去,到最后执行完成,写回历程,会经历哪些阶段,每个阶段是怎么处理的;
2、培养 如何去设计一个好的并行算法;
3、常见的软件工程师所必需掌握的各项技能;
4、训练如何编程,如何写出高质量的程序;
5、培养解决各类实际问题的能力,无论是异构并行算法上出现的问题,还是硬件层面出现的问题。