文档章节

关于非堆内存申请的性能测试

愚民日记
 愚民日记
发布于 2017/07/20 13:31
字数 219
阅读 21
收藏 0

最近有朋友关于 Voovan 申请非堆内存后在连接关闭后进行释放的问题存在疑问,这里我进行了一个非对内存申请的测试.

测试代码如下:

public class UnsafePerformance {


    public static void main(String[] args) throws Exception {
        Logger.simple(TEnv.getCurrentPID());
        long address = 0;
        long start = 0;

        //切换这个标记,使用堆和堆外内存,观察性能情况
        boolean useStackMemory = false;

        for(int x=0;x<10;x++) {
            start = System.currentTimeMillis();
            for (int i = 0; i < 100000; i++) {
                if(useStackMemory) {
                    byte[] b = new byte[1024 * 50];
                } else {
                    address = TUnsafe.getUnsafe().allocateMemory(1024 * 50);
                    TUnsafe.getUnsafe().freeMemory(address);
                }
            }
            Logger.simple("=="+(System.currentTimeMillis() - start)+"==");
        }
    }
}

共申请 10次,每次10w 个 50k 的内存,并记录下每次10w 个申请的时间消耗.

结果如下:

平均没10w 个申请消耗的事件是26ms,锁非堆内存的申请和释放在任何情况下都完全不可能成为瓶颈.

 

 

© 著作权归作者所有

共有 人打赏支持
愚民日记
粉丝 66
博文 9
码字总数 14581
作品 4
乌鲁木齐
后端工程师
云上大数据系列2:如何最大化利用你的集群资源

本篇是云上大数据系列第二篇文章,主要介绍系统的基础调优,让集群的资源能够被充分利用起来。在后续的文章中,我们还将会分享更多关于云上大数据系统的性能分析和调优经验,敬请期待。 大数...

子淑
07/21
0
0
C语言堆内存堆申请与文件读入的性能分析

前言: 对于C语言的学习者来说,对于内存的分析与管理是不得不接触到的问题。这篇文章我希望来讨论下对与C语言对堆内存的使用问题。写这篇博文的原因是由于最近在学习C的过程中的一个查字典的...

某程序猿
2014/07/22
0
7
java内存分析

Java内存泄露监控工具 http://wenku.baidu.com/view/cb7becb765ce050876321307.html 2. 性能测试总结之内存泄露和内存溢出 http://www.uml.org.cn/Test/200912106.asp 刚刚做完了一个项目的性...

Oscarfff
2015/12/10
153
0
企业级 Ehcache : Terracotta BigMemory

原文:http://simpleframework.net/ 早期客户用于企业Ehcache的BigMemory?取得突破性的内存使用率? 为Ehcache嵌入管理模块解决了通用垃圾收集问题:增加可用内存,消除了广泛的垃圾收集调整,...

cknet
2010/11/15
1K
0
.NET面试题解析(06)-GC与内存管理

转自:http://www.cnblogs.com/anding/p/5260319.html 常见面试题目: 1. 简述一下一个引用对象的生命周期? 2. 创建下面对象实例,需要申请多少内存空间? public class User{ } 3. 什么是垃圾...

莫问今朝乄
02/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

iOS开发用到的图片尺寸汇总

启动图 型号 竖屏 横屏 iPhone SE 640px × 1136px 1136px × 640px iPhone 6s 750px × 1334px 1334px × 750px iPhone 6s Plus 1242px × 2208px 2208px × 1242px iPhone 7 750px × 1334......

业界小白
18分钟前
0
0
浅谈redis

redis是一个开源,内存式的健值存储数据库,也被称为健值存储的字典服务器。健值类型有字符串,hash(哈希类型),set(集合),list(列表) 和有序集合 特征细节: 内存式:redis将健值存储在主...

拐美人
25分钟前
0
0
无限扩容,按需使用!ZStack推出基于阿里云NAS的文件存储服务

日前,ZStack发布2.6.0版本,正式宣布推出基于阿里云NAS的文件存储服务。得益于业界领先的阿里云分布式存储架构,融合NAS后的ZStack 2.6.0拥有高性能、高可靠、容量无限扩展、一键操作、按需...

ZStack社区版
27分钟前
1
0
崛起于Springboot2.X之Mongodb多数据源处理(35)

多数据源:4个mongodb库! 目录结构图: 1、添加pom依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId>......

木九天
33分钟前
0
0
如何获取显示器的EDID信息

Q1: 为什么要写这篇文章? A1:在最近的工作中遇到了不少问题,其中很多都是和EDID相关的。可以说,作为一家以“显示”为生的企业,我们时时刻刻在与EDID打交道。EDID这东西很简单,但是如果...

DB_Terrill
33分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部