Skynet 1M Fiber microbenchmark in D

drug drug2004 at bk.ru
Wed Oct 18 13:55:22 UTC 2017


18.10.2017 16:37, ikod пишет:
> 
> I ran this under linux perf, and here is top from 'perf report'
> 
> # Overhead  Command  Shared Object       Symbol
> # ........  .......  .................. 
> ........................................................................................... 
> 
> #
>       7.34%  t        [kernel.kallsyms]   [k] clear_page
>       6.80%  t        [kernel.kallsyms]   [k] __do_page_fault
>       5.39%  t        [kernel.kallsyms]   [k] __lock_text_start
>       3.90%  t        t                   [.] nothrow core.thread.Fiber 
> core.thread.Fiber.__ctor(void delegate(), ulong)
>       3.73%  t        [kernel.kallsyms]   [k] unmap_page_range
>       3.32%  t        [kernel.kallsyms]   [k] flush_tlb_mm_range
>       2.70%  t        [kernel.kallsyms]   [k] _raw_spin_lock
>       2.57%  t        libpthread-2.23.so  [.] pthread_mutex_unlock
>       2.53%  t        t                   [.] nothrow void 
> core.thread.Fiber.__dtor()
> 
> So looks like memory management, even not GC, take most of the time (if 
> I interpret these numbers correctly)

It depends on how much time test took. If it was small then of course 
creating the fibers took too much percents. Ideally we need to find the 
duration of the test when percents of memory management stop changing - 
it will be more reliable numbers.


More information about the Digitalmars-d-learn mailing list