• Pixysoft.framework.configuration 性能提升报告



    测试结果: 

    。简单对象 序列化 5000次 性能提高6倍

    。简单对象 反序列化 5000次 6.3times

    。复杂接口序列化 5000次  9.5 times

    。复杂接口反序列化 5000次 7.9 times 

    。复杂对象序列化 5000次  10.2 times 

    。复杂对象包含接口序列化与反序列化 2500次  7.3times 

    1.  简单对象 序列化 5000次

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    ms serialize
    Time Elapsed: 886ms
    CPU time: 390,625,000ns
    Gen 0: 95
    Gen 1: 0
    Gen 2: 0

    xml serialize
    Time Elapsed: 1,046ms
    CPU time: 875,000,000ns
    Gen 0: 68
    Gen 1: 0
    Gen 2: 0

    dynamic serialize
    Time Elapsed: 156ms
    CPU time: 156,250,000ns
    Gen 0: 16
    Gen 1: 0
    Gen 2: 0


    1 passed, 0 failed, 0 skipped, took 2.27 seconds (Ad hoc).

    反射的性能最差,而动态提高了6倍性能。

    2. 简单对象 反序列化 5000次 

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    ms deserialize
        Time Elapsed:        780ms
        CPU time:        
    437,500,000ns
        Gen 
    0:             97
        Gen 
    1:             0
        Gen 
    2:             0

    xml deserialize
        Time Elapsed:        951ms
        CPU time:        
    890,625,000ns
        Gen 
    0:             83
        Gen 
    1:             0
        Gen 
    2:             0

    dynamic deserialize
        Time Elapsed:        181ms
        CPU time:        
    187,500,000ns
        Gen 
    0:             42
        Gen 
    1:             0
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 2.16 seconds (Ad hoc).

    3.复杂接口序列化 5000次

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    reflection serialize
        Time Elapsed:        
    12,249ms
        CPU time:        
    11,093,750,000ns
        Gen 
    0:             1480
        Gen 
    1:             15
        Gen 
    2:             0

    dynamic serialize
        Time Elapsed:        
    1,637ms
        CPU time:        
    1,265,625,000ns
        Gen 
    0:             178
        Gen 
    1:             0
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 14.09 seconds (Ad hoc).

    4.复杂接口反序列化 5000次 7.9 times

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    xml reflection deserialize
        Time Elapsed:        
    13,978ms
        CPU time:        
    13,250,000,000ns
        Gen 
    0:             1477
        Gen 
    1:             73
        Gen 
    2:             0

    dynamic deserialize
        Time Elapsed:        
    1,528ms
        CPU time:        
    1,437,500,000ns
        Gen 
    0:             282
        Gen 
    1:             0
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 15.80 seconds (Ad hoc).

    5.复杂对象序列化 5000次  10.2 times

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    ms serialize
        Time Elapsed:        836ms
        CPU time:        
    515,625,000ns
        Gen 
    0:             132
        Gen 
    1:             0
        Gen 
    2:             0

    reflection serialize
        Time Elapsed:        
    15,268ms
        CPU time:        
    14,656,250,000ns
        Gen 
    0:             1346
        Gen 
    1:             1
        Gen 
    2:             0

    dynamic serialize
        Time Elapsed:        
    1,954ms
        CPU time:        
    1,843,750,000ns
        Gen 
    0:             371
        Gen 
    1:             0
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 18.19 seconds (Ad hoc).

    6.复杂对象反序列化 5000次 6.140625倍

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    ms deserialize
        Time Elapsed:        910ms
        CPU time:        
    546,875,000ns
        Gen 
    0:             152
        Gen 
    1:             0
        Gen 
    2:             0

    xml deserialize
        Time Elapsed:        
    15,428ms
        CPU time:        
    14,937,500,000ns
        Gen 
    0:             1242
        Gen 
    1:             1
        Gen 
    2:             0

    dynamic deserialize
        Time Elapsed:        
    2,278ms
        CPU time:        
    2,234,375,000ns
        Gen 
    0:             357
        Gen 
    1:             1
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 18.89 seconds (Ad hoc).

    7.  复杂对象包含接口序列化与反序列化 2500次  7.3times

    代码
    ------ Test started: Assembly: Pixysoft.TestDrivens.Configurations.exe ------

    xml deserialize
        Time Elapsed:        
    31,244ms
        CPU time:        
    29,078,125,000ns
        Gen 
    0:             2497
        Gen 
    1:             19
        Gen 
    2:             0

    dynamic deserialize
        Time Elapsed:        
    4,999ms
        CPU time:        
    4,359,375,000ns
        Gen 
    0:             658
        Gen 
    1:             1
        Gen 
    2:             0


    1 passed, 0 failed, 0 skipped, took 36.45 seconds (Ad hoc).
  • 相关阅读:
    『计算机视觉』Mask-RCNN_推断网络其五:目标检测结果精炼
    『TensorFlow』高级高维切片gather_nd
    『计算机视觉』Mask-RCNN_推断网络其四:FPN和ROIAlign的耦合
    『计算机视觉』Mask-RCNN_推断网络其三:RPN锚框处理和Proposal生成
    『计算机视觉』Mask-RCNN_推断网络其二:基于ReNet101的FPN共享网络暨TensorFlow和Keras交互简介
    『计算机视觉』Mask-RCNN_推断网络其一:总览
    在ASP.NET MVC项目中使用React
    详解ABP框架的多租户
    .NET开发者如何愉快的进行微信公众号开发
    微软的R语言发行版本MRO及开发工具RTVS
  • 原文地址:https://www.cnblogs.com/zc22/p/1813094.html
Copyright © 2020-2023  润新知