cpu-cache

    1热度

    1回答

    我有一个简单的长主键的实体。 我做了一个查询,如:从表中选择primary_key IN(....); Hibernate似乎想要做一个查询来获取Ids(我刚刚指定的!),然后进入L2缓存。有什么办法可以跳过最初的查询吗?我只想通过主键获得一组实体。 不确定这是JPA 1还是JPA 2.0(它更好地支持列表)。 我可以在一个循环中执行findById()并获得所需的结果,但这显然不是最优的。

    3热度

    1回答

    根据我的理解,事务一旦完成就不会立即刷新。他们坐在内存中的缓存中,并且只有在EntityManager确定这样做的成本效益时才会写入数据库。我相信在这种情况下使用L1缓存,但如果我错了,请纠正我。 我的问题是,在分布式环境中,持久化上下文使用的缓存是分布式的吗?

    5热度

    2回答

    我一直在运行一些算法的基准测试并分析它们的内存使用情况和效率(L1/L2/TLB访问和未命中),其中一些结果对我来说非常有趣。 考虑包含式高速缓存层次结构(L1和L2高速缓存),不应该L1高速缓存的未命中数与L2高速缓存的访问次数一致?我发现的其中一个解释是TLB相关的:当虚拟地址未被映射到TLB中时,系统会自动跳过某些缓存级别的搜索。 这看起来合法吗?

    1热度

    2回答

    我正在做一个国际象棋动作生成器,我有机会用许多'if语句'替换'while/for loops',并且我想知道如果添加〜3000条线会如何改进性能或者只是使算法是太大而不能存储在CPU缓存 我知道这取决于缓存大小的(我有一个的AMD Phenom 8650三核2.3),但我真的没有IDEA

    3热度

    2回答

    我正在通过斯科特迈耶的播客CPU CACHES AND WHY YOU CARE看来这将使代码运行得更快,是否有任何开源的地方,这样的编码是做参考。 或者任何人都有基于数据结构/算法设计的示例CPU caches aware

    1热度

    1回答

    我有一个任务来了解TLB缓存中的方法数量。我应该使用哪种算法?

    1热度

    2回答

    是否有一本为它的所有..可悲的是我可以对所有这些东西进行肤浅的谈话。我已经去过Uni,并且在所有这些主题中都得到了A,但是我不知道堆栈或记忆的真实外观。 我不“得到”真正的线程。 CPU高速缓存行如何工作,以及它如何因读/写障碍而失效。诸如TLB之类的东西 任何一本书或者一小部分书籍可以帮助你阅读。

    2热度

    1回答

    像有一些方法如何保证Java的刷新已经在的CyclicBarrier之前已经完成或CountDownLatch使我们能够继续(为synchronized关键字一样)不使用的写入缓存同步关键字?

    1热度

    1回答

    我正在写一个CPU的高速缓存模拟器,将采取大小以字节缓存中,长度以字节为单位的每个高速缓存线,并且数在缓存集/组的。 我已经大部分写的,但我一直在挣扎了几个小时是要弄清楚,我需要多少位来移位左/右提取标签和指数定地址的领域。 例如,给定地址,我需要确定标记和索引。 下面是我提取标签的内容,但我很确定这是不正确的。 int extractTag(int address, int sets){

    6热度

    2回答

    是否有可能在CPU高速缓存中显式创建静态对象,以确保这些对象始终保留在高速缓存中,因此从未达到内存或上帝禁止的性能影响 - 硬盘虚拟内存? 我特别感兴趣的是针对大型L3共享高速缓存,而不是针对L1,L2,指令或任何其他高速缓存,只是最大的内存块。 只是为了澄清与我在发布之前搜索的其他线程的区别,我没有兴趣将整个缓存私有化,只是少数几个类的区域。