AIX系统--共享内存

本文介绍了AIX系统中关于共享内存的限制,包括不同AIX版本的最大内存大小,最小共享内存段大小,以及最大共享内存ID数量。当遇到共享内存分配失败时,应检查paging space的空闲空间,并通过`topas`、`smitty chps`、`smitty mkps`命令进行管理和调整。此外,还提到了进程可连接的共享内存段数量限制,以及如何通过设置`EXTSHM`环境变量来扩展共享内存段的使用。
部署运行你感兴趣的模型镜像

AIX系统共享内存最大值限制:

* 256M bytes before AIX 4.3.1
* 2G bytes for AIX 4.3.1 through AIX 5.1
* 64G bytes for 64-bit applications for AIX 5.1 and later
* Minimum shared-memory segment size is 1 byte.
* Maximum number of shared memory IDs is 4096 for operating system releases before AIX 4.3.2, 131072 for releases AIX

 

出现共享内存分配失败时,首先考虑是否有足够空闲空间。

AIX的共享内存从paging space中分配,物理内存小于2G时,该值是物理内存1.5倍,否则该值与物理内存相等,一般不小于2Gpaging space是分布在不同物理磁盘上的。

执行命令topas查看paging space

执行命令smitty chpssmitty mkps分别可以修改、创建paging space

 

其次,考虑进程是否加载超过11段的共享内存。

对于64位进程,同一进程可连接最多268435456个共享内存段;

对于32位进程,同一进程可连接最多11个共享内存段,除非使用扩展的shmat

AIX4.1以后版本将内存分段管理,且要求一段共享内存必须映射内存段的起始位置,即每个共享内存地址必须是2^18整数倍。每个进程可以使用16256M的内存段,其中11段可用做共享内存,即默认情况进程最多只能使用11段共享内存,如果进程扩展了数据段空间,共享内存将不足11段。

增加环境变量:export EXTSHM=ON

这样共享内存地址不受256M限制,即一段共享内存可以使用一个普通地址,只要空间足够可以加载很多段共享内存。

修改系统限制/etc/security/limits,修改nofiles=-1    nofiles_hard=-1

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值