- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi folks
Wonder if anyone could share the experience about what kind of performance gain we expect from compiling linux kernel with icc. how you validate it? Since Linux kernel does not have any FP operations, will this reduce the benefit by using icc?
Thanks
Wonder if anyone could share the experience about what kind of performance gain we expect from compiling linux kernel with icc. how you validate it? Since Linux kernel does not have any FP operations, will this reduce the benefit by using icc?
Thanks
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The big advantage of icc in comparison with a gcc which is tuned to your processor comes in vectorizable code, not so prevalent in the kernel. When you see time spent in the kernel in real applications, it may be spent on operations where the compiler is not a factor.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
i thought 2 places icc might do better than gcc
1) gcc take care the compatibility, so icc can do some processor specific optimization, especially those advanced&complex instructins like from SSE2
2) icc can do more aggressive optimization
so vectorized code is like part of 1), any special place in 2)?
thanks!
Ming
1) gcc take care the compatibility, so icc can do some processor specific optimization, especially those advanced&complex instructins like from SSE2
2) icc can do more aggressive optimization
so vectorized code is like part of 1), any special place in 2)?
thanks!
Ming
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you make a rule that gcc must use code generation options compatible with all CPUs which it supports, while icc can optimize for your specific processor, icc has a potential advantage in the 32-bit case, maybe not a large one, as far as the kernel is concerned. Since you mention SSE, evidently you're not interested in Itanium.
I don't know that aggressive optimizations (beyond those normally used for building kernel) have a useful role there.
I don't know that aggressive optimizations (beyond those normally used for building kernel) have a useful role there.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
when compile kernel and choose right processor type, kernel will use flags like -mtune=pentium or others. so with that enabled in gcc, do u still think icc will provide considerable advantage? also u mention 32bit, what about 64bit?
if icc can compile kernel smoothly and we run lmbench or alike benchmark can find performance difference, i will go ahead to do that. but that will take long time. so i would like to gain some opinions from you before jumping into that.
thanks.
ming
if icc can compile kernel smoothly and we run lmbench or alike benchmark can find performance difference, i will go ahead to do that. but that will take long time. so i would like to gain some opinions from you before jumping into that.
thanks.
ming
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page