[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Ada-mode-users] Performance of ada_mode_wisi_lr1_parse.exe vs. abort st
From: |
Ludovic Brenta |
Subject: |
[Ada-mode-users] Performance of ada_mode_wisi_lr1_parse.exe vs. abort statements |
Date: |
Mon, 17 Dec 2018 18:43:52 +0100 |
Hello,
Philippe has made some measurements of the performance
of ada_mode_wisi_lr1_parse.exe under callgrind and found
that approximately 10% of CPU time is spent in instructions
perparing for a possible abort statement. I tried recompiling
ada_mode_wisi_lr1_parse.exe with the following configuration
pragmas and found a minor speed improvement but there is
indeed an abort statement preventing us from applying pragma
No_Abort_Statements. I have a couple of questions about this.
First of all, does this affect both parsers?
Second, is there a way to redesign the affected parser(s) not
to use an abort statement? If so, the pragma would buy us
an immediate 10% performance boost.
Here are the configuration pragmas I applied; they come from
lengthy research to optimize the performance of our main
application:
pragma No_Heap_Finalization;
pragma Restrictions (No_Initialize_Scalars);
-- pragma Restrictions (No_Abort_Statements); -- violated at
wisitoken-parse-lr-mckenzie_recover.adb:204:16
pragma Restrictions (Max_Asynchronous_Select_Nesting => 0);
pragma Restrictions (No_Asynchronous_Control);
pragma Restrictions (No_Dynamic_Priorities);
--
Ludovic Brenta.
- [Ada-mode-users] Performance of ada_mode_wisi_lr1_parse.exe vs. abort statements,
Ludovic Brenta <=