【Unity DOTS1.0】学习之路---先导课1-4笔记

本文介绍了缓存命中率及其对应用性能的影响,缓存抖动的概念,以及AOS和SOA两种数据布局方式对缓存性能的优化。此外,还提到了SIMD技术在并行处理中的作用,非托管内存块的特性,以及Unity中的Archetypes和Chunk概念,强调了StructuralChange对性能的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【新手小白自我鞭策—补充部分专有名词】
缓存命中:缓存命中率:通常来讲,缓存的命中率越高则表示使用缓存的收益越高,应用的性能越好(响应时间越短、吞吐量越高),抗并发的能力越强。
命中:可以直接通过缓存获取到需要的数据。
不命中:无法直接通过缓存获取到想要的数据,需要再次查询数据库或者执行其它的操作。原因可能是由于缓存中根本不存在,或者缓存已经过期。
自己理解其他操作为选择下一级缓存,如果没有下一次缓存就访问内存?(不确定)

缓存抖动:缓存抖动 ,多处理器系统中若干缓存之间为了保证缓存一致性要直接通信,如果内存总线忙于其他缓存事务,需要通信的缓存就必须等待其他缓存通信(更新访问)之后才能通信,这种等待就是缓存抖动。

AOS和SOA: AOS即为结构的数组,SOA为数组的结构,例如:

struct AoSData
{
    public int a;
    public int b;
    public int c;
    public int d;
}

struct SoAData
{
    public NativeArray<int> aArray;
    public NativeArray<int> bArray;
    public NativeArray<int> cArray;
    public NativeArray<int> dArray;
}

两者在内存上的划分大致如下:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值