`
mryufeng
  • 浏览: 981963 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

erlang r12 新增加Percept并发性能调测模块

阅读更多

Percept is an application-level profiler with focus on parallelism.

Can help in finding:
    – synchronization bottlenecks
    – periods of few runnable processes

Makes use of new trace points in the virtual machine.

Collects data about when processes are runnable andwaiting.

Graphical interactive presentation of collected data.

  • 描述: percept preview
  • 大小: 64.9 KB
分享到:
评论
3 楼 mryufeng 2007-11-21  
另外还添加了Common Test Test Server2个Application来测试erlang的整个系统 用户可以直接写test case 貌似不错。
2 楼 dcaoyuan 2007-11-20  
不错,非常直观,这样不用我在Code中手工加代码测试各process的耗时了。图示结果表明,并行的第2到第5个Processes确实是差不多同时启动,且并行运行。第一个Process是在合并结果,这个非并行的耗时并不是最主要的。而且,erl的启动时间看来也在整个耗时中占了一部分,不过对更大的文件来说这部分时间就不重要了。
1 楼 Arbow 2007-11-19  
来做个尝试,程序是 widefinder项目的 tbray9a.erl,经过少量修改,去掉了 halt():

引用
1> percept:profile("test.dat", {tbray9a,start,[]}, [procs]).
Starting profiling.
8900    : 2006/09/29/Dynamic-IDE
2000    : 2006/07/28/Open-Data
1300    : 2003/07/25/NotGaming
800     : 2003/09/18/NXML
800     : 2003/10/16/Debbie
800     : 2006/01/31/Data-Protection
700     : 2003/06/23/SamsPie
600     : 2006/01/08/No-New-XML-Languages
600     : 2006/09/07/JRuby-guys
600     : 2005/07/27/Atomic-RSS
ok
2> percept:analyze("test.dat").
Parsing: "test.dat"
check_activity_consistency, invalid start state: inactive.
insert_trace, bad_state: {profile,<0.30.0>,inactive,
                                  {code_server,call,2},
                                  {1195,446574,24650}}
Parsed 79 entries in 1.79400e-3 s.
    5 created processes.
    0 opened ports.
ok
3> percept:start_webserver().
{started,"test98",57194}


在浏览器打开 http://localhost:57194/ 截图如下:



相关推荐

    Erlang深度分析

    Percept是R12版本中新增的一个并发性能调测模块,它提供了对Erlang运行时的深入分析工具,能够帮助开发者理解程序的行为,发现潜在的性能瓶颈。 ##### 6.2 erlang的心跳机制 Erlang的心跳机制(heart)是Erlang高...

    erlang 深度分析

    - **Percept并发性能调测模块**: 提供了更精细的并发性能测试能力。 - **新语法**: 引入了新的函数调用语法,支持代码的热替换。 - **文档改进**: R12B版本中对文档进行了大幅度的完善和细化。 #### 19. Erlang...

    Erlang并发编程,Erlang程序设计,Erlang中文手册

    Erlang并发编程,Erlang程序设计,Erlang中文手册。 学习erlang的好资料。  Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此...

    erlang22最新下载包

    Erlang22是Erlang的第22个主要版本,它包含了对语言特性的改进、性能优化以及一些新的库和工具。 在“erlang22最新下载包”中,提供的文件是`otp_src_22.1`,这表明这是一个源代码包,包含Erlang/OTP(开放电信平台...

    erlang深度分析.pdf

    ***g的R12B版本包含了Percept等新模块,提供了更深入的性能监控和调测工具。Erlang也不断更新,引入新特性以适应新的编程模式和需求。 #### 10. 网络通信 Erlang支持多种网络协议,如SCTP和SSL,这些协议提供了更...

    erlang两种参数模块化

    参数化模块的目的是扩展Erlang编程语言,使其能够创建类似于面向对象编程中的回调。参数化模块通过一种新的语法形式允许模块接受参数,并基于这些参数实例化。这样可以创建模块的不同“版本”,每个版本都具有特定的...

    java php python erlang 千万级内存数据性能比较

    在提供的文件"erlang_list_dict_test.erl"和"erlang_list_dict_test - pro_dict-check_duplicate.erl"中,可以看到Erlang对列表和字典(dict)操作的性能测试。Erlang的字典数据结构通常比其他语言的哈希表更快,...

    Erlang OTP并发编程实战(中文版)

    **Erlang OTP并发编程实战** 是一本专为开发者深入理解Erlang OTP并发机制而设计的实战指南。OTP(Open Telecom Platform)是Erlang编程语言的核心组件,提供了强大的并发处理能力和分布式系统构建框架。这本书以...

    erlang并发编程 .pdf

    书中指出Erlang的并发性能得益于其轻量级进程,这些进程是由操作系统内核独立调度的,能够有效地在多核CPU上运行,因此非常适用于构建可扩展的并发应用。 编程部分涵盖了数据类型、模式识别、内置函数、并发、列表...

    erlang 20.3 最新版本下载

    Erlang是一种高级编程语言,特别为构建分布式、并发、容错和实时系统而设计。它的设计理念源于在电信系统中的需求,特别是在Ericsson公司的研究中诞生。Erlang以其强大的并发处理能力、热代码更新以及容错性而闻名,...

    erlang并发编程

    Erlang并发编程是Erlang语言的核心特性之一,它为构建高效、容错的分布式系统提供了强大的工具。Erlang是一种函数式编程语言,特别适合处理并发和实时系统,因其在电信行业的广泛应用而闻名。以下是一些关于Erlang...

    并发需求下的Scala及Erlang语言的比较与使用

    ### 并发需求下的Scala及Erlang语言的比较与使用 在当今的高并发、大数据处理场景下,选择合适的编程语言对于系统性能至关重要。在众多编程语言中,Scala和Erlang因其强大的并发处理能力和函数式编程特性而受到关注...

    Erlang编程

    - **模块化编程**:在Erlang中编写代码通常涉及将程序拆分成模块,每个模块包含特定功能的函数。 5. **实际应用**: - Erlang适用于需要高度并发和高容错性的应用,例如即时消息系统、在线游戏服务器、分布式...

    ErlangOTP并发编程实战(高清PDF版)

    书是讲述下一代编程语言Erlang 的权威著作,主要涵盖顺序型编程、异常处理、编译和运行代码、并发编程、并发编程中的错误处理、分布式编程、多核编程等内容。本书将帮助读者在消息传递的基础上构建分布式的并发系统...

    erlang9.rar

    Erlang以其独特的并发模型和强大的错误恢复能力,广泛应用于需要高性能、高可用性的系统。在安装和使用Erlang时,了解其基本概念和特性,以及如何利用OTP库,将有助于更好地开发和维护Erlang项目。

    erlang资源

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,用于构建高可用性、分布式和实时系统。这个“erlang资源”包含两本PDF书籍——《Erlang并发编程》和《Erlang入门手册》,它们是深入...

Global site tag (gtag.js) - Google Analytics