zoukankan      html  css  js  c++  java
  • 并发任务“xcode设置不同并发任务数量”及“内存大小”对编译时间的影响

    废话就不多说了,开始。。。

        

        

    xcode可以设置译编时的并发任务数量,这一参数与译编间时有什么关系?存内的巨细,对译编间时有什么影响?这两天对这两个方面行进了测试。
        每日一道理
    哦,妈妈 亲爱的妈妈,您对我的爱比太阳还要炽热,比白雪更为圣洁。在我成长的道路上,您就是女儿夏日里的浓荫,冬天里的炭火,您更是女儿人生路上的一盏明灯。

        

    论结:

    1、现有大部分Mac配置了i7处置器,应设置并发任务数量为8,可以到达佳最果效

    2、4G存内及8G存内下,译编间时是基本一样的,故无需升级存内,但须要坚持构建呆板尽量少地开打不相干的程序(例如开打N个XCODE),同时每隔一段间时可以重启下呆板

     

    一、境环

    操作系统:Mac OS x 10.7.4

    存内:4GB 1333MHZ DDR3 ;8GB 1333MHZ

    处置器:2GHz Intel Core i7

    被测项目:

    项目 代码文件巨细
    A 68.4MB
    B 472MB
    C 1044MB


    二、数据 

    并发和任务

    表一 4G存内下设置不同并发任务(2、4、6、8分离表现并发任务为2、4、6、8)



    并发和任务

    表二 4G存内下设置不同并发任务


     

    并发和任务

    表三:4G、8G存内的译编间时比较

     

    三、分析

    关于并发数量任务设置:

    在现xcode默认设置的并发任务数量为4(网上说默以为2,但我们在现的xcode版本计估经已优化了这一设置,默以为4),可以看到当设置并发任务为4时,比设置为2要快40%右左。而事实上,i7是一款支撑超线程技术的四核处置器,当相于是有8个处置核心,因此,将并发数量设为8时,可以高提率效,比拟并发数量为4时,可以快13%右左

     

    关于存内巨细对译编的影响:

           由表三可以看到,在重新启动呆板后,再行进构建,存内4G、8G下的译编间时基本是一样的;另外,须要注意到,且须要延续察观的一个象现是:1 测试呆板之前是作为一般的构建呆板,天每须要执行大批的构建任务,一开始未对其行进重启便开始测试,这时候的译编间时要比重启后再行进测试的耗时,要多20%右左(数据见件附);2. 4G存内下,其可用存内一直在1G到200MB之间动波,而8G存内下,可用存内一般都在4G以上;据这两个象现,可以步初断推,4G存内会随着呆板执行任务次数的增多而渐逐消费,到最后,也会成为性能的瓶颈,因此,我们不要在构建呆板上开打不相干的程序,且可以按期重启呆板

     

     关于构建文件的缓存

           对同个任务,第一次构建的耗时要比第二次构建的耗时要长。这是因为,在第一次构建后,在存内或者虚拟存内中,会缓存上一次构建的文件;因此第二次构建的io耗时就减少了;过程当中也测试了,重新启动呆板后再行进构建(这时候就没有了缓存),并发任务数量设为8,然依要比并发数量设为4快12%右左(和不重启呆板的论结是一样的)。

     

    其他:

    1.  并发任务数量相干令命(在终端行运以下令命,就可以久永效生,用不每次译编都行运)

    取获现有设置:

    defaults read com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks

     

    设置并发任务数量为8:

    defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 8

     

    文章结束给大家分享下程序员的一些笑话语录: 程序员打油诗   
      写字楼里写字间,写字间里程序员;
      程序人员写程序,又拿程序换酒钱。
      酒醒只在网上坐,酒醉还来网下眠;
      酒醉酒醒日复日,网上网下年复年。
      但愿老死电脑间,不愿鞠躬老板前;
      奔驰宝马贵者趣,公交自行程序员。
      别人笑我忒疯癫,我笑自己命太贱;
      不见满街漂亮妹,哪个归得程序员。

  • 相关阅读:
    上传图片2(接上一篇)
    上传图片2
    上传图片
    SQL Server基础之存储过程
    C#导入Excel、Excel导入、导入.xls 、导入.xlsx、Excel2003版本、Excel2007版本
    C#使用 System.Net.Mail发送邮件功能
    C#发送邮件三种方法,Localhost,SMTP,SSL-SMTP
    angular模板
    从“繁”到“简”进行数组去重
    CSS强制英文、中文换行与不换行
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3060028.html
Copyright © 2011-2022 走看看