Sebastian Gniazdowski
|
760fc6cc75
|
*highlight: Let "emulate" be first instruction in *process function
parse.zsh -oo, after changes:
Running time: 1.7100990000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1702,69 4,86 99,99% 1229,47 3,51 72,20% -hsmw-highlight-process
2) 2800 337,70 0,12 19,83% 337,70 0,12 19,83% -hsmw-highlight-string
3) 2450 79,86 0,03 4,69% 79,86 0,03 4,69% -hsmw-highlight-check-path
4) 1400 38,44 0,03 2,26% 38,44 0,03 2,26% -hsmw-highlight-main-type
5) 350 9,76 0,03 0,57% 9,76 0,03 0,57% -hsmw-highlight-stack-pop
6) 350 7,48 0,02 0,44% 7,48 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,09 0,09 0,01% 0,09 0,09 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 18:13:39 +02:00 |
|
Sebastian Gniazdowski
|
13b3934f76
|
*highlight: Define also "buf" and "len" at one "local", etc. keyword
parse.zsh -oo, after changes:
Running time: 1.7114690000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1704,09 4,87 100,00% 1229,84 3,51 72,17% -hsmw-highlight-process
2) 2800 337,05 0,12 19,78% 337,05 0,12 19,78% -hsmw-highlight-string
3) 2450 81,20 0,03 4,76% 81,20 0,03 4,76% -hsmw-highlight-check-path
4) 1400 38,61 0,03 2,27% 38,61 0,03 2,27% -hsmw-highlight-main-type
5) 350 9,85 0,03 0,58% 9,85 0,03 0,58% -hsmw-highlight-stack-pop
6) 350 7,54 0,02 0,44% 7,54 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 18:11:07 +02:00 |
|
Sebastian Gniazdowski
|
18cd426cb2
|
*highlight: Huge optimization: Don't redefine variables at each loop
parse.zsh -oo, after changes:
Running time: 1.7135350000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1706,03 4,87 99,99% 1230,37 3,52 72,11% -hsmw-highlight-process
2) 2800 338,39 0,12 19,83% 338,39 0,12 19,83% -hsmw-highlight-string
3) 2450 81,56 0,03 4,78% 81,56 0,03 4,78% -hsmw-highlight-check-path
4) 1400 38,43 0,03 2,25% 38,43 0,03 2,25% -hsmw-highlight-main-type
5) 350 9,85 0,03 0,58% 9,85 0,03 0,58% -hsmw-highlight-stack-pop
6) 350 7,44 0,02 0,44% 7,44 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,12 0,12 0,01% 0,12 0,12 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 18:06:45 +02:00 |
|
Sebastian Gniazdowski
|
1a5ac41130
|
*highlight: Optimization: don't do ! (( ... )), instead do (( ... ==0 ))
parse.zsh -oo, after changes:
Running time: 1.7914460000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1784,00 5,10 100,00% 1310,16 3,74 73,44% -hsmw-highlight-process
2) 2800 334,93 0,12 18,77% 334,93 0,12 18,77% -hsmw-highlight-string
3) 2450 81,08 0,03 4,54% 81,08 0,03 4,54% -hsmw-highlight-check-path
4) 1400 40,07 0,03 2,25% 40,07 0,03 2,25% -hsmw-highlight-main-type
5) 350 9,76 0,03 0,55% 9,76 0,03 0,55% -hsmw-highlight-stack-pop
6) 350 8,00 0,02 0,45% 8,00 0,02 0,45% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 17:58:49 +02:00 |
|
Sebastian Gniazdowski
|
a558600315
|
*highlight: Better code handling history expansion
Times like 181x ms seem to occur more often.
|
2016-10-25 17:54:42 +02:00 |
|
Sebastian Gniazdowski
|
56aa7592b7
|
*highlight: Optimization: compress code handling braces, always block
parse.zsh -oo, after changes:
Running time: 1.7983390000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1790,84 5,12 99,99% 1316,27 3,76 73,50% -hsmw-highlight-process
2) 2800 335,29 0,12 18,72% 335,29 0,12 18,72% -hsmw-highlight-string
3) 2450 80,24 0,03 4,48% 80,24 0,03 4,48% -hsmw-highlight-check-path
4) 1400 41,35 0,03 2,31% 41,35 0,03 2,31% -hsmw-highlight-main-type
5) 350 9,70 0,03 0,54% 9,70 0,03 0,54% -hsmw-highlight-stack-pop
6) 350 7,99 0,02 0,45% 7,99 0,02 0,45% -hsmw-highlight-path-separators
7) 1 0,09 0,09 0,01% 0,09 0,09 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 17:48:51 +02:00 |
|
Sebastian Gniazdowski
|
8996f4c281
|
*highlight: Optimization: compress code handling MULTI_FUNC_DEF
|
2016-10-25 17:44:51 +02:00 |
|
Sebastian Gniazdowski
|
bd6e44859c
|
*highlight: Make '|| false' a comment
parse.zsh -oo, after changes:
Running time: 1.8009350000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1793,49 5,12 100,00% 1319,59 3,77 73,57% -hsmw-highlight-process
2) 2800 336,92 0,12 18,78% 336,92 0,12 18,78% -hsmw-highlight-string
3) 2450 80,77 0,03 4,50% 80,77 0,03 4,50% -hsmw-highlight-check-path
4) 1400 38,54 0,03 2,15% 38,54 0,03 2,15% -hsmw-highlight-main-type
5) 350 9,74 0,03 0,54% 9,74 0,03 0,54% -hsmw-highlight-stack-pop
6) 350 7,93 0,02 0,44% 7,93 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 17:36:57 +02:00 |
|
Sebastian Gniazdowski
|
b6704cca92
|
*highlight: Unneded "already_added=1"
|
2016-10-25 17:34:13 +02:00 |
|
Sebastian Gniazdowski
|
fddf05f911
|
*highlight: One more betterment of history expansion related code
|
2016-10-25 17:32:10 +02:00 |
|
Sebastian Gniazdowski
|
2b7656552a
|
*highlight: Optimization: better code that handles history expansion
parse.zsh -oo, after changes:
Running time: 1.8102530000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1802,80 5,15 100,00% 1325,15 3,79 73,50% -hsmw-highlight-process
2) 2800 339,52 0,12 18,83% 339,52 0,12 18,83% -hsmw-highlight-string
3) 2450 81,13 0,03 4,50% 81,13 0,03 4,50% -hsmw-highlight-check-path
4) 1400 39,34 0,03 2,18% 39,34 0,03 2,18% -hsmw-highlight-main-type
5) 350 9,77 0,03 0,54% 9,77 0,03 0,54% -hsmw-highlight-stack-pop
6) 350 7,89 0,02 0,44% 7,89 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,08 0,08 0,00% 0,08 0,08 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 17:29:46 +02:00 |
|
Sebastian Gniazdowski
|
b8f92d4f89
|
*highlight: Compress code handling assignments
|
2016-10-25 17:24:05 +02:00 |
|
Sebastian Gniazdowski
|
0915653d7d
|
*highlight: More correct array assignment detection
|
2016-10-25 17:19:18 +02:00 |
|
Sebastian Gniazdowski
|
1dcfc3c372
|
*highlight: Don't redefine already_added, don't set it for comments
parse.zsh -oo, after changes:
Running time: 1.8225100000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1814,83 5,19 99,99% 1336,69 3,82 73,65% -hsmw-highlight-process
2) 2800 338,83 0,12 18,67% 338,83 0,12 18,67% -hsmw-highlight-string
3) 2450 81,75 0,03 4,50% 81,75 0,03 4,50% -hsmw-highlight-check-path
4) 1400 39,80 0,03 2,19% 39,80 0,03 2,19% -hsmw-highlight-main-type
5) 350 9,74 0,03 0,54% 9,74 0,03 0,54% -hsmw-highlight-stack-pop
6) 350 8,02 0,02 0,44% 8,02 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,10 0,10 0,01% 0,10 0,10 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 16:58:55 +02:00 |
|
Sebastian Gniazdowski
|
d266b62e7e
|
*highlight: Optimization: compress noglob-related code
parse.zsh -oo, after changes:
Running time: 1.8347470000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1827,26 5,22 100,00% 1354,88 3,87 74,14% -hsmw-highlight-process
2) 2800 335,45 0,12 18,36% 335,45 0,12 18,36% -hsmw-highlight-string
3) 2450 79,78 0,03 4,37% 79,78 0,03 4,37% -hsmw-highlight-check-path
4) 1400 39,59 0,03 2,17% 39,59 0,03 2,17% -hsmw-highlight-main-type
5) 350 9,61 0,03 0,53% 9,61 0,03 0,53% -hsmw-highlight-stack-pop
6) 350 7,94 0,02 0,43% 7,94 0,02 0,43% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 16:49:52 +02:00 |
|
Sebastian Gniazdowski
|
246f6e8627
|
*highlight: Optimization: compress in_redirection-related code
parse.zsh -oo, after changes:
Running time: 1.8488320000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1841,21 5,26 99,99% 1364,52 3,90 74,10% -hsmw-highlight-process
2) 2800 336,95 0,12 18,30% 336,95 0,12 18,30% -hsmw-highlight-string
3) 2450 81,13 0,03 4,41% 81,13 0,03 4,41% -hsmw-highlight-check-path
4) 1400 40,74 0,03 2,21% 40,74 0,03 2,21% -hsmw-highlight-main-type
5) 350 9,80 0,03 0,53% 9,80 0,03 0,53% -hsmw-highlight-stack-pop
6) 350 8,08 0,02 0,44% 8,08 0,02 0,44% -hsmw-highlight-path-separators
7) 1 0,10 0,10 0,01% 0,10 0,10 0,01% -hsmw-highlight-fill-option-variables
8) 1 0,03 0,03 0,00% 0,03 0,03 0,00% -hsmw-highlight-init
|
2016-10-25 16:47:02 +02:00 |
|
Sebastian Gniazdowski
|
d34d812c71
|
*highlight: Optimization: reuse "local", etc. keywords
./parse -oo, after changes:
Running time: 1.8522630000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1844,79 5,27 100,00% 1368,04 3,91 74,15% -hsmw-highlight-process
2) 2800 338,28 0,12 18,34% 338,28 0,12 18,34% -hsmw-highlight-string
3) 2450 81,31 0,03 4,41% 81,31 0,03 4,41% -hsmw-highlight-check-path
4) 1400 39,39 0,03 2,14% 39,39 0,03 2,14% -hsmw-highlight-main-type
5) 350 9,81 0,03 0,53% 9,81 0,03 0,53% -hsmw-highlight-stack-pop
6) 350 7,95 0,02 0,43% 7,95 0,02 0,43% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 16:37:38 +02:00 |
|
Sebastian Gniazdowski
|
46c907d524
|
*highlight: Harmful 'unset path_dirs_was_set', shorter near code
|
2016-10-25 16:21:33 +02:00 |
|
Sebastian Gniazdowski
|
2bef2b9343
|
*highlight: Optimization – save options outside main highlighting fun
Lower 18xx are being seen, like below:
Running time: 1.8632000000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1855,72 5,30 100,00% 1376,89 3,93 74,19% -hsmw-highlight-process
2) 2800 342,38 0,12 18,45% 342,38 0,12 18,45% -hsmw-highlight-string
3) 2450 80,16 0,03 4,32% 80,16 0,03 4,32% -hsmw-highlight-check-path
4) 1400 38,99 0,03 2,10% 38,99 0,03 2,10% -hsmw-highlight-main-type
5) 350 9,83 0,03 0,53% 9,83 0,03 0,53% -hsmw-highlight-stack-pop
6) 350 7,47 0,02 0,40% 7,47 0,02 0,40% -hsmw-highlight-path-separators
7) 1 0,07 0,07 0,00% 0,07 0,07 0,00% -hsmw-highlight-fill-option-variables
8) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 16:17:39 +02:00 |
|
Sebastian Gniazdowski
|
0400ad6d76
|
*highlight: Hash with token types must be global
|
2016-10-25 16:05:51 +02:00 |
|
Sebastian Gniazdowski
|
594c4074fc
|
*highlight: Optimization: don't use 'true' and 'false' builtins
The result much more often reaches 18xx milliseconds. Below is almost
the bottom value, which is ~1874 ms.
./parse -oo, after changes:
Running time: 1.8982620000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1890,78 5,40 100,00% 1411,07 4,03 74,63% -hsmw-highlight-process
2) 2800 340,46 0,12 18,01% 340,46 0,12 18,01% -hsmw-highlight-string
3) 2450 80,94 0,03 4,28% 80,94 0,03 4,28% -hsmw-highlight-check-path
4) 1400 40,49 0,03 2,14% 40,49 0,03 2,14% -hsmw-highlight-main-type
5) 350 9,76 0,03 0,52% 9,76 0,03 0,52% -hsmw-highlight-stack-pop
6) 350 8,07 0,02 0,43% 8,07 0,02 0,43% -hsmw-highlight-path-separators
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 15:22:54 +02:00 |
|
Sebastian Gniazdowski
|
7eaa9f26aa
|
*highlight: Optimization – a hash of token types instead of 3 arrays
./parse -oo, before changes:
Running time: 2.0874240000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2079,89 5,94 100,00% 1591,12 4,55 76,50% -hsmw-highlight-process
2) 2800 342,91 0,12 16,49% 342,91 0,12 16,49% -hsmw-highlight-string
3) 2450 85,09 0,03 4,09% 85,09 0,03 4,09% -hsmw-highlight-check-path
4) 1400 42,54 0,03 2,05% 42,54 0,03 2,05% -hsmw-highlight-main-type
5) 350 9,98 0,03 0,48% 9,98 0,03 0,48% -hsmw-highlight-stack-pop
6) 350 8,24 0,02 0,40% 8,24 0,02 0,40% -hsmw-highlight-path-separators
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
./parse -oo, after changes:
Running time: 1.9223140000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 1914,66 5,47 100,00% 1435,29 4,10 74,96% -hsmw-highlight-process
2) 2800 340,12 0,12 17,76% 340,12 0,12 17,76% -hsmw-highlight-string
3) 2450 81,34 0,03 4,25% 81,34 0,03 4,25% -hsmw-highlight-check-path
4) 1400 39,98 0,03 2,09% 39,98 0,03 2,09% -hsmw-highlight-main-type
5) 350 9,87 0,03 0,52% 9,87 0,03 0,52% -hsmw-highlight-stack-pop
6) 350 8,05 0,02 0,42% 8,05 0,02 0,42% -hsmw-highlight-path-separators
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 15:10:31 +02:00 |
|
Sebastian Gniazdowski
|
0ab5b98062
|
*highlight: Optimization: unneeded block {} in if argument
|
2016-10-25 14:03:56 +02:00 |
|
Sebastian Gniazdowski
|
c87d9acd8f
|
*highlight: Set of optimizations, also logic changes (commandseparator)
parse -oo, before:
Running time: 2.2680830000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2260,37 6,46 100,00% 1679,94 4,80 74,32% -hsmw-highlight-process
2) 2800 358,98 0,13 15,88% 358,98 0,13 15,88% -hsmw-highlight-string
3) 2450 87,01 0,04 3,85% 87,01 0,04 3,85% -hsmw-highlight-check-path
4) 1400 72,33 0,05 3,20% 72,33 0,05 3,20% (anon)
5) 1400 42,94 0,03 1,90% 42,94 0,03 1,90% -hsmw-highlight-main-type
6) 350 10,27 0,03 0,45% 10,27 0,03 0,45% -hsmw-highlight-stack-pop
7) 350 8,91 0,03 0,39% 8,91 0,03 0,39% -hsmw-highlight-path-separators
8) 1 0,02 0,02 0,00% 0,02 0,02 0,00% -hsmw-highlight-init
parse -oo, after:
Running time: 2.0801330000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2072,44 5,92 100,00% 1586,54 4,53 76,55% -hsmw-highlight-process
2) 2800 341,85 0,12 16,49% 341,85 0,12 16,49% -hsmw-highlight-string
3) 2450 83,71 0,03 4,04% 83,71 0,03 4,04% -hsmw-highlight-check-path
4) 1400 42,58 0,03 2,05% 42,58 0,03 2,05% -hsmw-highlight-main-type
5) 350 9,69 0,03 0,47% 9,69 0,03 0,47% -hsmw-highlight-stack-pop
6) 350 8,07 0,02 0,39% 8,07 0,02 0,39% -hsmw-highlight-path-separators
7) 1 0,01 0,01 0,00% 0,01 0,01 0,00% -hsmw-highlight-init
|
2016-10-25 14:00:08 +02:00 |
|
Sebastian Gniazdowski
|
c8496ca35d
|
*highlight: Utilize arithmetic context
|
2016-10-17 14:12:14 +02:00 |
|
Sebastian Gniazdowski
|
1c6493100b
|
*highlight: Optimization: expand path once
|
2016-10-17 13:07:29 +02:00 |
|
Sebastian Gniazdowski
|
d37fe9d4b6
|
*highlight: pure_buf_len no longer used and needed
|
2016-10-17 12:36:15 +02:00 |
|
Sebastian Gniazdowski
|
cf97c91dba
|
*highlight: Use mend, don't manually check length of match (for $offset)
|
2016-10-17 07:36:14 +02:00 |
|
Sebastian Gniazdowski
|
fb4c4b7b81
|
*highlight: Optimization: set noksharrays at main entry point (*process)
|
2016-10-17 07:28:26 +02:00 |
|
Sebastian Gniazdowski
|
331df45fa7
|
*highlight: Better indexing detection in variables – use [^\]]
|
2016-10-17 06:54:11 +02:00 |
|
Sebastian Gniazdowski
|
ab439966ee
|
*highlight: Optimization: remove *-check-assign call
|
2016-10-17 06:48:44 +02:00 |
|
Sebastian Gniazdowski
|
d2fbc7eb37
|
*highlight: Variable names not from unicode characters (2)
|
2016-10-17 06:33:42 +02:00 |
|
Sebastian Gniazdowski
|
08bdd36ae9
|
*highlight: Variable names not from unicode characters
|
2016-10-17 06:29:52 +02:00 |
|
Sebastian Gniazdowski
|
af73d936de
|
*highlight: Optimization: remove *-expand-path calls
Results are too random to store, main execution time varies much,
but for sure there is no slowdown.
|
2016-10-16 16:37:38 +02:00 |
|
Sebastian Gniazdowski
|
3b543a4ecc
|
*highlight: Coloring history doesn't need checking a path as prefix
parse.zsh -oo, before change:
Running time: 2.3793230000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2371,62 6,78 100,00% 1636,82 4,68 69,02% -hsmw-highlight-process
2) 2800 365,84 0,13 15,43% 365,84 0,13 15,43% -hsmw-highlight-string
3) 2450 195,43 0,08 8,24% 135,32 0,06 5,71% -hsmw-highlight-check-path
4) 3850 92,77 0,02 3,91% 92,77 0,02 3,91% -hsmw-highlight-expand-path
5) 1400 67,54 0,05 2,85% 67,54 0,05 2,85% (anon)
6) 1400 43,99 0,03 1,85% 43,99 0,03 1,85% -hsmw-highlight-main-type
7) 700 11,19 0,02 0,47% 11,19 0,02 0,47% -hsmw-highlight-check-assign
8) 350 9,66 0,03 0,41% 9,66 0,03 0,41% -hsmw-highlight-stack-pop
parse.zsh -oo, after change:
Running time: 2.3625050000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2354,85 6,73 100,00% 1649,87 4,71 70,06% -hsmw-highlight-process
2) 2800 366,95 0,13 15,58% 366,95 0,13 15,58% -hsmw-highlight-string
3) 2450 163,48 0,07 6,94% 103,18 0,04 4,38% -hsmw-highlight-check-path
4) 3850 92,94 0,02 3,95% 92,94 0,02 3,95% -hsmw-highlight-expand-path
5) 1400 68,50 0,05 2,91% 68,50 0,05 2,91% (anon)
6) 1400 43,79 0,03 1,86% 43,79 0,03 1,86% -hsmw-highlight-main-type
7) 700 11,32 0,02 0,48% 11,32 0,02 0,48% -hsmw-highlight-check-assign
8) 350 9,65 0,03 0,41% 9,65 0,03 0,41% -hsmw-highlight-stack-pop
Main execution time is quite unstable, but *-check-path() running time is ok. 30ms gain.
|
2016-10-16 15:20:40 +02:00 |
|
Sebastian Gniazdowski
|
572872a97c
|
*highlight: Optimization: remove *-is-redirection call
parse.zsh -oo, before changes:
Running time: 2.5141480000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2506,66 7,16 100,00% 1713,68 4,90 68,36% -hsmw-highlight-process
2) 2800 374,42 0,13 14,94% 374,42 0,13 14,94% -hsmw-highlight-string
3) 2450 194,12 0,08 7,74% 133,36 0,05 5,32% -hsmw-highlight-check-path
4) 3850 94,01 0,02 3,75% 94,01 0,02 3,75% -hsmw-highlight-expand-path
5) 1400 66,67 0,05 2,66% 66,67 0,05 2,66% (anon)
6) 8400 54,50 0,01 2,17% 54,50 0,01 2,17% -hsmw-highlight-is-redirection
7) 1400 40,93 0,03 1,63% 40,93 0,03 1,63% -hsmw-highlight-main-type
8) 700 10,95 0,02 0,44% 10,95 0,02 0,44% -hsmw-highlight-check-assign
parse.zsh -oo, after changes:
Running time: 2.3994030000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2391,73 6,83 100,00% 1650,94 4,72 69,03% -hsmw-highlight-process
2) 2800 371,19 0,13 15,52% 371,19 0,13 15,52% -hsmw-highlight-string
3) 2450 195,75 0,08 8,18% 135,31 0,06 5,66% -hsmw-highlight-check-path
4) 3850 93,17 0,02 3,90% 93,17 0,02 3,90% -hsmw-highlight-expand-path
5) 1400 67,69 0,05 2,83% 67,69 0,05 2,83% (anon)
6) 1400 43,96 0,03 1,84% 43,96 0,03 1,84% -hsmw-highlight-main-type
7) 700 11,25 0,02 0,47% 11,25 0,02 0,47% -hsmw-highlight-check-assign
8) 350 9,78 0,03 0,41% 9,78 0,03 0,41% -hsmw-highlight-stack-pop
|
2016-10-16 15:10:14 +02:00 |
|
Sebastian Gniazdowski
|
0292e6928d
|
*highlight: Style for "\$" merged with "$var"
|
2016-10-16 14:54:36 +02:00 |
|
Sebastian Gniazdowski
|
7bbc05b0b0
|
*highlight: Small *-string optimization, use mend and mbegin
A few miliseconds gain.
|
2016-10-16 13:41:14 +02:00 |
|
Sebastian Gniazdowski
|
08419957ee
|
*highlight: Fully optimal *-string, no / substitution and (S) flag
parse.zsh -oo, before changes:
Running time: 2.9235860000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2916,15 8,33 100,00% 1727,84 4,94 59,25% -hsmw-highlight-process
2) 2800 764,12 0,27 26,20% 764,12 0,27 26,20% -hsmw-highlight-string
3) 2450 196,31 0,08 6,73% 134,73 0,05 4,62% -hsmw-highlight-check-path
4) 3850 95,16 0,02 3,26% 95,16 0,02 3,26% -hsmw-highlight-expand-path
5) 1400 67,34 0,05 2,31% 67,34 0,05 2,31% (anon)
6) 8400 56,32 0,01 1,93% 56,32 0,01 1,93% -hsmw-highlight-is-redirection
7) 1400 41,19 0,03 1,41% 41,19 0,03 1,41% -hsmw-highlight-main-type
8) 700 11,24 0,02 0,39% 11,24 0,02 0,39% -hsmw-highlight-check-assign
parse.zsh -oo, after changes:
Running time: 2.5433330000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 2535,74 7,24 100,00% 1730,74 4,94 68,25% -hsmw-highlight-process
2) 2800 385,15 0,14 15,19% 385,15 0,14 15,19% -hsmw-highlight-string
3) 2450 193,50 0,08 7,63% 132,71 0,05 5,23% -hsmw-highlight-check-path
4) 3850 94,23 0,02 3,72% 94,23 0,02 3,72% -hsmw-highlight-expand-path
5) 1400 67,68 0,05 2,67% 67,68 0,05 2,67% (anon)
6) 8400 55,01 0,01 2,17% 55,01 0,01 2,17% -hsmw-highlight-is-redirection
7) 1400 41,00 0,03 1,62% 41,00 0,03 1,62% -hsmw-highlight-main-type
8) 700 11,01 0,02 0,43% 11,01 0,02 0,43% -hsmw-highlight-check-assign
764.12 - 385.15 = 378.97
2916.15 - 2535.74 = 380,41
380 / 2916.0 = 0.13
|
2016-10-16 13:26:45 +02:00 |
|
Sebastian Gniazdowski
|
26a66c0bcc
|
*highlight: Working but not fully optimal *-string ((S) problem?)
|
2016-10-16 12:38:37 +02:00 |
|
Sebastian Gniazdowski
|
2fff438589
|
parse.zsh: Unneeded ';' at end of line
|
2016-10-16 08:39:33 +02:00 |
|
Sebastian Gniazdowski
|
35014130c1
|
*highlight: Don't store region_highlight entry if it's "none"
parse ./to-parse.zsh before changes:
Running time: 0.8560130000
num calls time self name
-----------------------------------------------------------------------------------
1) 1 855,65 855,65 100,00% 776,29 776,29 90,72% -hsmw-highlight-process
2) 356 43,15 0,12 5,04% 33,62 0,09 3,93% -hsmw-highlight-check-path
3) 144 15,50 0,11 1,81% 15,50 0,11 1,81% -hsmw-highlight-main-type
4) 500 13,47 0,03 1,57% 13,47 0,03 1,57% -hsmw-highlight-expand-path
5) 144 10,06 0,07 1,18% 10,06 0,07 1,18% (anon)
6) 564 4,86 0,01 0,57% 4,86 0,01 0,57% -hsmw-highlight-is-redirection
7) 83 1,53 0,02 0,18% 1,53 0,02 0,18% -hsmw-highlight-check-assign
8) 2 0,32 0,16 0,04% 0,32 0,16 0,04% -hsmw-highlight-string
parse ./to-parse.zsh after changes:
Running time: 0.8107540000
num calls time self name
-----------------------------------------------------------------------------------
1) 1 810,39 810,39 100,00% 732,47 732,47 90,38% -hsmw-highlight-process
2) 356 42,07 0,12 5,19% 32,70 0,09 4,03% -hsmw-highlight-check-path
3) 144 15,67 0,11 1,93% 15,67 0,11 1,93% -hsmw-highlight-main-type
4) 500 13,08 0,03 1,61% 13,08 0,03 1,61% -hsmw-highlight-expand-path
5) 144 10,33 0,07 1,28% 10,33 0,07 1,28% (anon)
6) 564 4,35 0,01 0,54% 4,35 0,01 0,54% -hsmw-highlight-is-redirection
7) 83 1,52 0,02 0,19% 1,52 0,02 0,19% -hsmw-highlight-check-assign
8) 2 0,25 0,13 0,03% 0,25 0,13 0,03% -hsmw-highlight-string
|
2016-10-15 19:32:19 +02:00 |
|
Sebastian Gniazdowski
|
9bd017728c
|
*highlight: Change the state machine from using strings to using bits
|
2016-10-15 19:12:40 +02:00 |
|
Sebastian Gniazdowski
|
fd31ffc605
|
*highlight: Small change – more explicit array expansion, with [@]
|
2016-10-15 15:48:17 +02:00 |
|
Sebastian Gniazdowski
|
c04b09873a
|
*highlight: Command, builtin, alias, function – order of type checking
|
2016-10-15 15:42:27 +02:00 |
|
Sebastian Gniazdowski
|
22d839f3bc
|
*highlight: Simpler code related to offset calculation
|
2016-10-15 15:22:04 +02:00 |
|
Sebastian Gniazdowski
|
60710d31b5
|
*highlighting: Optimization – remove *add-highlight function
parse.zsh -o, before changes:
Running time: 0.9516510000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 945,28 2,70 100,00% 632,08 1,81 66,87% -hsmw-highlight-process
2) 3150 62,92 0,02 6,66% 62,92 0,02 6,66% -hsmw-add-highlight
3) 950 80,01 0,08 8,46% 58,97 0,06 6,24% -hsmw-highlight-check-path
4) 300 58,21 0,19 6,16% 57,09 0,19 6,04% -hsmw-highlight-string
5) 1950 43,18 0,02 4,57% 43,18 0,02 4,57% -hsmw-highlight-expand-path
6) 1000 36,50 0,04 3,86% 36,50 0,04 3,86% -hsmw-highlight-main-type
7) 1000 28,77 0,03 3,04% 28,77 0,03 3,04% (anon)
8) 3100 19,17 0,01 2,03% 19,17 0,01 2,03% -hsmw-highlight-is-redirection
parse.zsh -o, after changes:
Running time: 0.8807530000
num calls time self name
-----------------------------------------------------------------------------------
1) 350 874,42 2,50 100,00% 630,15 1,80 72,06% -hsmw-highlight-process
2) 950 78,16 0,08 8,94% 57,66 0,06 6,59% -hsmw-highlight-check-path
3) 300 57,42 0,19 6,57% 57,42 0,19 6,57% -hsmw-highlight-string
4) 1950 41,83 0,02 4,78% 41,83 0,02 4,78% -hsmw-highlight-expand-path
5) 1000 33,57 0,03 3,84% 33,57 0,03 3,84% -hsmw-highlight-main-type
6) 1000 28,36 0,03 3,24% 28,36 0,03 3,24% (anon)
7) 3100 18,92 0,01 2,16% 18,92 0,01 2,16% -hsmw-highlight-is-redirection
8) 200 3,20 0,02 0,37% 3,20 0,02 0,37% -hsmw-highlight-check-assign
( 1084 - 847 ) / 1084.0 = 0.2186
|
2016-10-15 14:40:02 +02:00 |
|
Sebastian Gniazdowski
|
8acdd8bd5b
|
*highlight: Use $REPLY, don't create additional variables
|
2016-10-15 13:31:04 +02:00 |
|
Sebastian Gniazdowski
|
05cb4c6073
|
*highlight: 7ms opt: (#m) doesn't need match, mend, mbegin
|
2016-10-15 13:01:16 +02:00 |
|
Sebastian Gniazdowski
|
a051f6a6cb
|
*highlight: Fix lack of (#m) flag (for $MATCH), result of regex->pattern
|
2016-10-15 12:53:02 +02:00 |
|