Thanks a lot :-D

> This is the icache or code - not the data the code is accessing. 

Yes, it is the cache miss of iTLB, i.e. *Instruction* Translation Lookaside 
Buffer.

I have tried the https://github.com/facebookincubator/BOLT, but the linker 
Golang used seems does not allow `--emit-relocs` option. I also 
tried libhugetlbfs, but it seems could not be applied to Golang.
On Friday, September 17, 2021 at 9:34:52 PM UTC+8 ren...@ix.netcom.com 
wrote:

> This is the icache or code - not the data the code is accessing. 
>
> On Sep 17, 2021, at 8:12 AM, peterGo <go.pe...@gmail.com> wrote:
>
> 
> rmfr,
>
> What is your data, what is its structure, and what are the access paths 
> and frequencies?
>
> Your data is unlikely to be a randomly accessed blob of bits. Is there a 
> set of Pareto access paths that you can use to order your data by access 
> frequency? You want the most frequently accessed data to be adjacent. 
>
> Peter
>
>
> On Friday, September 17, 2021 at 5:09:32 AM UTC-4 rmfr wrote:
>
>> One of our Golang applications has a very huge binary size and the size 
>> of the .text segment itself in the elf is approximately *34MB*. The iTLB 
>> load miss reaches about *87%* of all iTLB cache hits.
>>
>> Is there any advice for big Golang applications to reduce the iTLB cache 
>> miss? Two solutions come to me, PGO 
>> <https://en.wikipedia.org/wiki/Profile-guided_optimization> and using 
>> hugepages to load the .text segment. But they are both seem very difficult 
>> to implement in Golang.
>>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to golang-nuts...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/golang-nuts/1778bb58-e2e1-4bba-a869-1effb1e3952an%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/golang-nuts/1778bb58-e2e1-4bba-a869-1effb1e3952an%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/5d680b74-dec8-4475-813f-3dca33c71d13n%40googlegroups.com.

Reply via email to