为什么近期芯片产能如此吃紧?

近期芯片产能紧张,尤其对大陆小型fabless公司影响显著。欧美半导体大厂复苏是主要原因,导致晶圆厂产能饱和。电脑行业的快速复苏进一步加剧了这一情况。中芯国际因需优先满足国际大客户而降低了大陆fabless公司的产能优先级。

昨天一位大陆小型fabless公司老板向老杳抱怨近期芯片产能吃紧,以致无法找到有空闲产能的晶圆厂,今天另一家大陆公司也向老杳抱怨中芯国际无法安排公司新增长的订单,其实近一段时间来无论台积电、联电还是中芯国际,包括一些大的封装测试厂产能几近饱和,对于销量不大、数目庞大的大陆fabless公司来讲,近期即使作为甲方,想给供应商送订单都成了一件困难的事。

上午参加SEMICON china,正好碰到iSupply的顾文军讲到2010年IC赢在中国,也谈到了近期芯片产能吃紧的话题,作为大陆业界人士,头一次面对有单无处下的窘境不知道是不是有史以来的第一次,特别是在经历了2009年经济危机晶圆、封测厂产能不足受到足够优待之后更是如此,到底是什么原因造成了芯片产能如此吃紧,对于大陆fabless及半导体行业又意味着什么?

经过多方调查,老杳终于理清了芯片产能吃紧的根源,近半年以来,欧美半导体大厂普遍复苏,上周老杳到美国参加ADI针对基金经理及杂志主编举办的分析会,从ADI 2009年Q4的业绩可见一斑,2009年Q4相对Q3营收增加5.5%,相对2008年Q4增长26.5%,已经基本恢复到经济危机前的最高水平,作为行业发展指数的费城半导体指数近期不断攀升也印证了这一点,近半年来半导体股票普遍上涨幅度较大,可以说欧美半导体厂复苏是导致近期芯片产能吃紧的最根本原因。

从行业分析来看,电脑成为最先复苏的行业之一,带动了电脑周边芯片需求的增长,无论博通、Marvell还是台湾的瑞昱等电脑相关芯片提供商产能都在大幅增长,也因此导致晶圆厂的产能趋紧,这一点从中芯国际可以得到明显体现,由于中芯国际70%左右的产能来自这些国际大厂,一旦这些欧美厂商增加订单,对于大陆fabless的打击显然很大,毕竟作为公司的主要营收来源,SMIC不敢也不愿意得罪博通、高通这样的国际大客户,其结果只有冒险将许多大陆Fabless的产能优先级降低,对于以大陆为基础、立志服务大陆客户的中芯国际,在经历了官司败诉、裁员调整之后又一次面临客户危机,其中经受的考验可想而知。

其实不仅博通、高通等公司都在追加订单,包括NXP等其他国家大厂也都在增加订单,据顾文军分析,产能至今可能要维持到5月份之后,虽然经过多年发展大陆集成电路产业有了长足进步,从此次芯片产能吃紧的分析可以看出,大陆半导体产业在全球的影响依然弱小,相反国际半导体产业的变化对大陆微电子公司的影响越来越大。

初次听到产能吃紧,老杳还以为半年来大陆fabless有了长足进步,但仔细分析又不尽然,以老杳对大陆微电子公司的了解,半年来大陆微电子公司中展讯的销量增加最大,此外北京硅谷数模由于成功打进苹果未来销量可期总体来看大陆微电子公司业绩突飞猛进者并不多,反而由于今年直播星受禁显得略有平淡,这一点通过一家主要面向大陆客户的知名封测厂得来的数据也得到了印证,虽然很多封测厂近期产能吃紧,这家封测厂却只有一半的产能利用率,由此可以看出此次芯片产能吃紧与大陆微电子公司关系并不大,但由于国际知名半导体公司的复苏,带给大陆微电子公司的影响已经日渐明显。

目前得到的消息来看,大陆微电子公司中在台积电流片的企业所受影响较小,毕竟台积电的产能远大于中芯国际,大陆公司Fabless公司的需求增加很容易得到满足,不过对于70%产能来自国际大客户的中芯国际,客户订单的稍微增加便可以占据本来应当留给大陆fabless的产能,许多大陆fabless感到深受其害也就可以理解,不过大陆微电子公司代表了SMIC的未来,希望SMIC管理层能够妥善处于好大陆客户的订单需求,否则一旦将许多优质客户推向台积电,再想追回来可能需要付出几倍的努力,对于大陆微电子公司,通过此次产能吃紧也应当明白,最终决定能否获得产能的关键还是实力,即使当面对自己的供应商时依然如此,联发科敢于要求日月光将封装测试价格降低10%原因也在于此。(作者,老杳)

laoyaoba

老杳吧:集成电路社区–欲知半导体动态,速上LAOYAOBA

【版权声明】:本文为老杳原创,欢迎转载,但必须注明“信息来源:老杳吧”及其他相关信息(作者姓名等),并保留原文链接。

<think>我们正在讨论内存吃紧时进程RSS大量减少的原因,且已排除Swap途径(swapents=0)。根据之前的分析,RSS减少可能源于非Swap的回收机制,重点在于文件缓存回收和内存压缩。 回答思路: 1. 强调核心原因:内核回收文件缓存(Page Cache)是主要途径。 2. 解释机制:当内存紧张时,内核优先回收干净的文件缓存(如已写入磁盘的缓存页),这直接释放物理内存,导致进程RSS不变但系统可用内存增加。但注意,某些情况下进程的RSS也可能被直接回收(如通过mlock限制的页面除外)。 3. 补充其他可能性:如内存压缩(zswap/KSM)或进程主动释放内存(如调用madvise(MADV_FREE))。 4. 区分RSS统计:RSS包括进程的匿名页和文件映射页,回收文件映射页会减少RSS。 具体回答: 当Swap未被使用时(`swapents=0`),内存吃紧导致进程RSS大量减少的最可能原因是**内核主动回收了映射到进程地址空间的文件页面(File-backed pages)**。详细说明如下: ### 主要原因:文件缓存回收(Page Cache Reclaim) - **文件映射页的回收**:进程通过`mmap`映射的文件或共享库占用的物理内存(属于RSS的一部分),在内存压力下会被内核回收。这些页面如果未被修改(即“干净页面”),可以直接丢弃(因为原始文件仍在磁盘);若被修改(脏页面),则需先写回磁盘再回收。 - **回收优先级**:内核的页面回收机制(如kswapd)优先回收文件缓存而非匿名页面(后者通常需Swap)。因此,即使Swap禁用,文件缓存回收仍可显著释放内存。 - **对RSS的影响**:回收文件映射页后,进程的RSS值会减少,因为这些页面不再驻留内存。 ### 其他可能原因: 1. **内存压缩(Compression)**: - 使用zswap等机制时,匿名页面被压缩存储在内存中,减少物理占用(但RSS统计可能不变,取决于实现)。 - KSM(Kernel Samepage Merging)合并相同内存页,减少冗余,但通常不直接减少单个进程RSS(而是降低总和)。 2. **进程主动释放**: - 应用程序调用`madvise(MADV_FREE)`或`malloc_trim`释放未使用的堆内存,使内核回收对应物理页。 - 进程退出或卸载动态库时,相关内存被回收。 ### 排查建议: - 使用`pmap -x <pid>`查看进程内存映射,关注文件映射段的变化。 - 通过`/proc/meminfo`观察`Slab`、`PageTables`及`SwapCached`等指标,结合`/proc/vmstat`中的`pgscan_kswapd`(kswapd扫描页面数)判断回收行为。 综上所述,文件缓存回收是Swap禁用时RSS减少的主要驱动力,尤其在I/O密集型场景中更为显著。 §§相关问题§§ 1. 如何通过`/proc/<pid>/smaps`文件详细分析进程的内存映射类型(如文件映射与匿名映射)及其变化? 2. 在内存压力下,内核回收文件缓存页和匿名页的具体触发阈值是如何配置的? 3. 使用`madvise(MADV_FREE)`与`MADV_DONTNEED`释放内存对RSS的影响有何区别? 4. 如何验证系统中zswap或KSM是否启用,并量化其对内存占用的优化效果? </think>内存吃紧时进程RSS(驻留集大小)大量减少,在排除Swap途径(`swapents=0`)的情况下,最可能的原因与Linux内核的页面回收机制优先级和非Swap释放策略密切相关。以下是核心原因分析: ### 主要原因:文件缓存回收(Page Cache Reclaim) 1. **内核优先回收文件缓存** - 当内存不足时,内核**优先回收干净的文件缓存**(如读取过的文件内容缓存),而非直接换出进程内存(Swap)。 - 文件缓存属于`Page Cache`(如通过`mmap`映射的文件或共享库),回收这些页面会**直接减少进程的RSS**,因为文件映射页被解除后不再占用物理内存。 - 例如:Java进程的JAR库文件缓存、数据库的文件I/O缓存被回收后,其RSS显著下降。 2. **脏页回写与丢弃** - 若文件缓存已被修改(脏页),内核异步将其写回磁盘后回收,同样导致RSS减少。 - 通过`/proc/vmstat`的`pgpgin`/`pgpgout`或`dirty_writeback`指标可验证。 --- ### 次要但重要的原因 3. **内存压缩技术** - **zswap**:将匿名页面压缩后存储在内存中(而非Swap),减少物理占用(但RSS统计值不变)。 - **KSM**(Kernel Samepage Merging):合并重复内存页,降低总RSS(常见于虚拟化环境)。 4. **进程主动释放内存** - 应用程序调用`madvise(MADV_FREE)`或`malloc_trim`释放未使用的堆内存。 - 动态库卸载(如PHP-FPM子进程结束)导致映射文件的内存被回收。 --- ### 排查建议 - **验证文件缓存回收**: ```bash grep -e "pgsteal" -e "pgscan" /proc/vmstat # 查看页面回收计数 ``` - **分析进程内存映射**: ```bash pmap -x <PID> | grep "mapped" # 检查文件映射段变化 ``` - **检查压缩技术启用状态**: ```bash grep -e KSM -e zswap /boot/config-$(uname -r) # 内核配置 ``` > 📌 **关键结论**:在Swap禁用或未触发时,**文件缓存回收是RSS减少的首要原因**,其次是内存压缩和进程主动释放。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值