SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Technology Stocks : Intel Corporation (INTC)
INTC 36.39+0.7%2:58 PM EST

 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext  
To: wanna_bmw who wrote (150429)11/29/2001 6:48:33 PM
From: kapkan4u  Read Replies (1) of 186894
 
<Not that it isn't fun wrestling with pigs (tm Jerry Sanders), but assuming you're right and large dense switch statements end up compiling into tables, it sounds to me like a table would have data, thus making use of the L1 data cache, not the trace cache. The trace cache holds decoded micro-ops, and in the case of a simple loop and table, I am quite confident that the application wouldn't exceed 12k uops>

Wrong again. The table contains labels marking every one of the case's statements. There will be 100K such labels in the table, every one pointing to 100K different code fragments performing operation sum += const and branching to the end of the switch (BTW, I forgot to insert a break statement after every case).

So the table is in L1 (which is too small for the table) but the code fragments are in TC. TC is also too small for the number of uops it has to fit.

Kap
Report TOU ViolationShare This Post
 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext