www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 16489] New: [backend][optimizaton][registers] DMD is 10-20

https://issues.dlang.org/show_bug.cgi?id=16489

          Issue ID: 16489
           Summary: [backend][optimizaton][registers] DMD is 10-20 times
                    slower for GLAS
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: major
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: ilyayaroshenko gmail.com

Small static arrays should be allocated in registers if possible [2]. Currently
DMD loads and stores values of static array each time.

Currently DMD is 10-20(!) times slower for GLAS matrix multiplication then LDC.
This is the largest DMD BE problem for GLAS [1].


[1] http://docs.mir.dlang.io/latest/mir_glas_l3.html
[2]
https://github.com/libmir/mir/blob/v0.17.0-alpha0/source/mir/glas/internal/gemm.d#L360

Related Issue: https://issues.dlang.org/show_bug.cgi?id=16488

--
Sep 12 2016