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.