[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Lisp_Marker size on 32bit systems
From: |
Stefan Monnier |
Subject: |
Re: Lisp_Marker size on 32bit systems |
Date: |
Fri, 07 Sep 2018 23:10:31 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
>> Those perf-stats also show improved I$ performance, which isn't
>> explained by your suggested explanation. Similarly, they show
>> a reduced number of instructions.
>
> Yes, it could well be that the 32-byte allocation is faster than the 24
> partly due to some reason other than d-cache effects. Although there
> is a smaller percentage of cache misses in the 32-byte version, it could be
> that this is because the 32-byte version uses simpler code that would be
> faster even if the cache miss rate were the same.
That's my impression as well, but I'd be curious to know why that is.
The only "obvious" advantage is that 32 is a power of 2 so you can use
shift for multiplication/division, but that would only apply to things
like indexing arrays of markers or computing the diff between two
marker pointers. AFAIK we don't do any such operation.
Stefan
- Re: Lisp_Marker size on 32bit systems, (continued)
- Re: Lisp_Marker size on 32bit systems, Stefan Monnier, 2018/09/07
- Re: Lisp_Marker size on 32bit systems, Paul Eggert, 2018/09/07
- Re: Lisp_Marker size on 32bit systems, Stefan Monnier, 2018/09/07
- Re: Lisp_Marker size on 32bit systems, Paul Eggert, 2018/09/07
- Re: Lisp_Marker size on 32bit systems, Stefan Monnier, 2018/09/07
- Re: Lisp_Marker size on 32bit systems, Paul Eggert, 2018/09/07
- Re: Lisp_Marker size on 32bit systems,
Stefan Monnier <=