1、BAT级别划分
BAT及其他知名互联网公司,内部职位都会划分出相应的级别,大多数情况BAT的运营,到手薪资和他们的级别是匹配的。
阿里的P序列是技术岗,M序列是管理岗,M1相当于P6,最高的是M9(比如淘宝前CEO陆兆禧,就是该级别)。
百度从P1-P4都是基层,从P5开始,薪资差距开始拉大。P6基本属于中层骨干,据说P6以上开始享受百度的股票分红。到了P9时就是总监级别。
腾讯的级别通道分成六个大级,每个大级里面又分三小级,比如11、12、13、21、22、23,以此类推,但通常只能达到P4。
2、晋升方式
阿里晋升:
在阿里P是专家,M是管理。P5升P6相对容易,再往上会越来越难,只有达到M1(P6)后,才算是公司的中层。
一般到了M2,已经是团队技术Leader,但是M1升M2非常难。
小甲是阿里的一名程序员,入职时是P1级别,一直在淘宝业务线工作,升到到P7,总共花了7年。
百度晋升:
应届毕业生通常是就是P3,1年左右能升到P4,但如果部门业务足够核心,或许1年就可以升到P4。从P3到P5需要花三年时间,接着从P5-P6-P7是个非常艰难的过程。
晋升方式可以由自己提名,提名后进入考察期,主管设定考察期目标,考察通过后顺利晋升,考察不通过维持原层级不变;
也可以由主管提名,这种情况下一般都是直接通过,但是如果现在的层级已经比较高了,那就不止是提名那么简单了。
由于百度核心部门老大话语权比较高,所以核心部门相对晋升容易些。
腾讯晋升:
腾讯目前的基础职能岗位是11,本科毕业生是12,硕士以上毕业生是13。
多数人会卡在P2和P3的级别,升到P4相当困难。
小乙毕业2年半,从P12升到P31后发现,如果是做基础架构、基础组件、核心框架等工作的话,比较容易升,因为答辩的时候更有料。而如果是做业务的话,会累得跟狗一样,比较吃亏。
腾讯一年会有两次评估,如果评估成功会晋升一个子等级,子级别达到3后再升就是跨一个大级。
晋升标准由两部分组成:
一是硬性指标,看工作年限,在此前等级的停留年限,所负责业务核心程度,是否有重大贡献等等。二是看答辩,从P23开始对硬性指标要求较高并有严格面试。
小丙的个人经历是:顺利的情况下大概4年左右可以升到P31,一般来说30岁升到P31是比较容易的,大多数人都可以达到,但绝大多数人最终会卡在P33的等级上。
3、薪资结构
阿里:
阿里的薪资结构:一般是12+1+3=16薪
年底的奖金为0-6个月薪资,90%人可拿到3个月
股票是工作满2年才能拿,第一次拿50%,4年能全部拿完
百度:
月薪146(12+06+2),其他岗位是月薪14
T5以上为关键岗位,另外有股票、期权等
T5、T6占比最大的级别,T8、T9占比最小
腾讯:
腾讯薪资架构:12+1+1=14个月薪,通常会给到16个月薪-20个月薪
年终奖:看部门盈利情况,一般是3个月薪
4、工作三年
阿里:
小A入职是个可怜的P4,税前只有可怜的4K ,在阿里待了长达6年后,375万月薪,每年涨幅40%。
拿了6年的375万月薪。算了下工资每年40%的涨幅。是不是很NB? 可是走之前也才刚过30K, 因为入职是个可怜的P4,税前只有可怜的4K 。
百度:
小B2013年加入百度,任职产品经理,P3级别(基层),11万月薪,年终绩效2个月,年终奖2个半月;
2014年晋升到P4级别,135万月薪;年终绩效1个月,年终奖8个月
2015年晋升P5级别,156万月薪;年终绩效不明,今年公司据说不会有很高的年终。
小A这样的就是百度普通员工,两年涨薪40%+。
腾讯:
小C2011年2月份研究生毕业进入腾讯,每个月9K+(现在腾讯的起薪已经是14K+)
2014年离开腾讯,每个月19K左右,中间有两三次20-30%的调薪,也就是每年涨薪20%。
但是小C又说,大部分时候如果不是优秀员工,真的很难有20%以上的调薪,优秀员工人数占总员工人数的5%-10%。也就是每100个腾讯员工里,只有5-10个人每年涨薪20%以上。
2014年到2015年,在阿里待了几个月,27K+股票,P6+职位。不过据小C了解,给他的薪水有点偏高,有可能跟他在腾讯的经历有点关系吧。
2016年5月份,开始在一家公募基金做互联网金融。
第四代电子计算机 第四代计算机是指从1970年以后采用大规模集成电路(LSI)和超大规模集成电路(VLSI)为主要电子器件制成的计算机。例如80386微处理器,在面积约为10MM X L0MM的单个芯片上,可以集成大约32万个晶体管。 第四代计算机的另一个重要分支是以大规模、超大规模集成电路为基础发展起来的微处理器和微型计算机。 微型计算机大致经历了四个阶段: 第一阶段是1971~1973年,微处理器有4004、4040、8008。 1971年INTEL公司研制出MCS4微型计算机(CPU为4040,四位机)。后来又推出以8008为核心的MCS-8型。 第二阶段是1973~1977年,微型计算机的发展和改进阶段。微处理器有8080、8085、M6800、Z80。初期产品有INTEL公司的MCS一80型(CPU为8080,八位机)。后期有TRS-80型(CPU为Z80)和APPLE-II型(CPU为6502),在八十年代初期曾一度风靡世界。 第三阶段是1978~1983年,十六位微型计算机的发展阶段,微处理器有8086、808880186、80286、M68000、Z8000。微型计算机代表产品是IBM-PC(CPU为8086)。本阶段的顶峰产品是APPLE公司的MACINTOSH(1984年)和IBM公司的PC/AT286(1986年)微型计算机。 第四阶段便是从1983年开始为32位微型计算机的发展阶段。微处理器相继推出80386、80486。386、486微型计算机是初期产品。 1993年, INTEL公司推出了PENTIUM或称P5(中文译名为"奔腾")的微处理器,它具有64位的内部数据通道。现在PENTIUM III(也有人称P7)微处理器己成为了主流产品,预计PENTIUM IV 将在2000年10月推出。 由此可见,微型计算机的性能主要取决于它的核心器件——微处理器(CPU)的性能。
要搞明白AVX指令集的作用,首先要讲明白它是什么。定义很简单,它就是x86处理器上面的一套SIMD指令集,是经典的SSE系列指令集的直接继承者。那么SIMD又是什么呢?
在计算机刚刚出现的早期阶段,冯·诺伊曼式计算机每次输入一个指令只能够 *** 作一对数据,比如说"+,a,b"可以让ab进行相加,这就是单指令流单数据流(Single Instruction Stream, Single Data Stream)。显然,在面对大量数据的时候,这种 *** 作数据的方法效率较低,程序员想要让一次 *** 作就对多组数据生效,怎么办呢?单指令流多数据流 *** 作(Single Instruction Stream, Multiple Data Stream)的思路就被引入了,它让输入一次指令就 *** 作多组数据变成了可能。
打开百度APP看高清
更直观的区别可以看上面的示意图。
上世纪八九十年代,很多处理器开发商都意识到了SIMD的前景,他们开始往自家的处理器里加入SIMD支持。1996年,Intel发布了基于新版P55C架构(最早一版Pentium处理器为P5架构)的Pentium MMX系列处理器,其中引入了新的MMX指令集,开始支持SIMD。
从MMX到SSE,再到AVX
Pentium MMX系列处理器上新引入的MMX指令集开创了x86处理器支持SIMD *** 作的先河,该指令集定义了8个64-bit宽度的寄存器,每个寄存器的64-bit容量中可以放入八个8-bit长度的整数或四个16-bit长度整数或两个32-bit整数,CPU在识别到MMX指令集的新指令时会自动将寄存器中的数据进行分割计算,这样一来,单个指令就成功 *** 作了多个数据,实现了SIMD。
但MMX毕竟太嫩,它实际上是通过复用CPU内部x87浮点单元的寄存器来实现SIMD的,所以与运行浮点运算的x87指令集有冲突,两者不能交叉使用,必须先进行切换。另外,由于上述的冲突,它只支持整数 *** 作,在即将要到来的3D时代中显得有些不够用。
Intel当然很清楚MMX指令集的局限之处,而竞争对手新捣鼓出来的3DNow!指令集(1998年,AMD K6-2)已经支持了浮点SIMD运算,于是他们赶紧在经典的奔3处理器上面引入了新的SSE(Streaming SIMD Extensions)指令集,时间点为1999年2月份。
SSE指令集解决了MMX指令集身上存在的两大问题,通过引入新的独立寄存器解决了与浮点运算间的冲突问题,同时也就支持了浮点SIMD运算。当然它相对于MMX有很大加强,表现在它的寄存器宽度随着处理器架构的进步而达到了128-bit,这样一来一次SIMD指令能够 *** 作更多的数据,效率上有大幅度的提高。不过初代SSE指令集的单个寄存器只支持32-bit长度的浮点数,还是有很大的局限性,这个问题在Pentium 4(Willamette,2000年)上面引入的SSE2中被解决了,SIMD *** 作的灵活度高了很多。
随后在约莫8年的时间里,Intel一直在更新SSE指令集,从SSE出到SSE4,AMD方面则是一直在跟进,到了SSE42,AMD开始想要在指令集上面寻找自己的翻身点,于是推出了只有自家支持的SSE4a子集,随后更是提前于Intel提出了SSE5。
但Intel不干,我是x86的老大,我不能跟着你来。他们另起炉灶,准备在未来的Sandy Bridge架构中引入一套新的SIMD指令集,这套新指令集在2008年公布,被命名为高级向量扩展(Advanced Vector Extensions)。
革新的AVX,越来越宽的寄存器
相比起迭代了多年的SSE系列指令集,AVX指令集带来了巨大的革新,其中最为主要的是,它在兼容SSE指令集性的同时,将SSE时代最大宽度为128-bit的寄存器拓宽到了256-bit。
不过初代AVX指令集还是比较保守的,它没有将所有指令宽度拓宽到256-bit,而是选择停留在128-bit上面。全面进入256-bit时代这个任务,还是交给了随后的Haswell架构来完成(2013年6月份)。
同处理器用不同指令集的能效对比
但如果以为Intel会就此停下脚步的话,那就大错特错了,他们很快捣鼓出了更宽的AVX-512指令集,顾名思义,其寄存器宽度再次加倍,来到512-bit。
首个支持AVX-512指令集的处理器其实是Intel的Xeon Phi加速卡,首次跑到CPU上已经是Skylake-X系列了。而AVX-512也并不再是一个单一的指令集,它实际上指代的是多个指令集的集合,目前这个数字是17,之后可能还会增多。所有支持AVX-512的处理器都必须支持AVX-512 Foundation子集,从命名上也可以看出,它其实是AVX-512指令集的基础。
长长的AVX-512子集列表
目前只有基于Skylake-Server和Ice Lake这两个架构的处理器可以支持AVX-512(Cannon Lake死了,不然也算),使用门槛较高,一般新一点的应用也只是针对AVX2进行优化。
宽度越大,处理器的计算能力也就越强,尤其是在浮点运算方面,理论上提升有一倍之多,而实际应用中,如果优化得当,其提升幅度还要大一些。但是,新指令集在带来性能增长的同时也带来了另一个让人感到头痛的问题——功耗。
性能强了,峰值功耗也高了
AVX指令集在带来更高性能的同时让CPU的峰值功耗也变高了,可以通过下面的例子进行理解:
飞机发动机是按照最大起飞重量设计的,如果实际的载重没有到最大起飞重量的话,飞行员就可以减推力起飞来降低油耗。CPU也是一样的,最吃功耗的执行单元是根据最大宽度来设计的,平时用不到最大宽度的时候它的功耗就小了,而一旦用到极限,它也就会全开,此时CPU的功耗就上去了。
现如今CPU的功耗是根据负载大小来的,在同频下面,AVX2的负载明显高于SSE负载,因此它的功耗也会大上去。为了让CPU的功耗保持在TDP范围之内,Intel特地设计了一个AVX偏移频率,让工作在AVX状态下面的处理器降低一点频率以减小发热量和功耗,保证使用安全。Intel官方也在2014年的一份AVX指令集优化白皮书中明确说明使用AVX指令集需要额外的电压和电流。
只在跑分上看到?其实不然
对于我们这些要做跑分评测的编辑来说,最常接触到的AVX应用其实就是AIDA64了,那么可能有读者就要问了,这个指令集都已经推出十年了难道只能用来跑分烤机吗?当然不是,在Intel的推广之下,现如今已经有大量的生产力应用支持它了,主要在渲染、视频编码、加解密和数学计算等方面有应用,新的AVX-512还针对深度学习推出了AVX-512 VNNI子集,另外,普通玩家最为关心的游戏方面也是有越来越多的应用了,下面举几个例子。
渲染、视频编码
渲染方面最常见的有Blender,它不仅仅在我们的测试中被用的多,是真的有很多人都会用它做动画或者CG图,它的渲染引擎可以调用AVX2指令集进行加速计算,吃满你的CPU。
跟渲染方面有点搭边的就是视频编码了,x264和x265这两个知名开源视频编码器想必已经不用再多介绍了,它们都在前几年中纷纷加入了对于AVX指令集的支持,后者甚至加入了针对AVX-512的支持,不过还需要继续优化。另外,Intel方面自己也开源了一套名为SVT的视频编码器,配合不同后端可以实现不同的编码,对AVX和多核的优化相当好。
深度学习
深度学习方面,Google著名的开源深度学习框架Tensorflow在16版本之后就已经需要一颗支持AVX指令集的CPU了,换言之,它应用了AVX指令集。
另外,AVX-512的大宽度让它很适合用来跑深度学习,所以Intel也针对深度学习设计了一套子指令集——AVX-512 VNNI,用来加速深度学习相关的计算,在测试中,它表现出了相当的实力。
加解密
加解密计算场景中对CPU的计算吞吐量有较大的要求,此时AVX指令集就可以发挥作用,常见的软件支持就有OpenSSL这个堪称是互联网基石的加密库,另外像很多程序会使用的libsodium加密库也提供了从AVX到AVX-512的优化,而Linux内核也支持使用AVX和AVX2指令集进行加解密计算,还会配合AES-NI这个专用的指令集。实际上目前还有很多数字货币的计算过程支持使用AVX指令集,不过这个应该是真的没有人会用了……
游戏
近两三年的大作基本都开始启用AVX指令集来进行计算了,一般在游戏中CPU负责除了图形以外的杂活,比如说计算各种NPC的运动路径,计算各种动体的轨迹这样的杂活。不过近两年也有厂商想让Intel参与进游戏图形计算,甚至是当下热门的光线追踪运算,比如Intel的光线追踪计算库Embree就可以被整合进游戏中,目前已经有《坦克世界》等游戏使用了它,Embree库高度依赖AVX指令集,也对CPU的游戏性能提出了新的阐述方式:直接参与图形渲染。
总结:未来是AVX的
总的来说,AVX目前还没有完全展露出它的价值,这也是软件优化缺位导致的。不过随着各路编译器的跟进、处理器迭代使得支持AVX指令集的处理器普及,相信我们的常用软件也会加入AVX优化,比如说在处理时调用它。配合上已经展开应用的各种生产力应用,AVX的前景非常广阔。
要用科学计算器才行,普通的计算器不行。
计算器上有一个 nCr 的键,以求 C5,2 为例,先按下5、再按nCr键、再按下2、再按“=”即得C5,2的组合结果。
如果是求排列,以求P5,2为例,先按下5、再按下shift键、再按nCr键、再按下2、再按“=”即得P5,2的排列结果。
如果只有普通的计算器,那只能按排列组合的公式来求了,例求P5,2那就按54=可得出P5,2的排列结果。
以上就是关于做了三年的运营,薪资究竟有多高全部的内容,包括:做了三年的运营,薪资究竟有多高、超大规模集成电路时代第四代计算机的特点是什么、怎么修补avx指令集等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)