- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
On analyzing my application using Intel VTune Profiler, I've come across a weird pattern:
Whenever the code changes from a SIMD instruction to a normal instruction or whenever there is a flow of control from a normal instruction to a SIMD instruction, the latter instructions show a very high value of Bad Speculation (which consists of two sub metrics: Branch Misprediction and Machine Clears).
For example, here is a sample code and the associated bad speculation:
mulsd %xmm1, %xmm1 7.7%
add $0x10, %rax 4.7%
addsd %xmm5, %xmm3 1.4%
add $0x8, %rdx 1.1%
addsd %xmm1, %xmm0 0.8%
cmp %rcx, %rax 3.1%
I've observed this behaviour across many applications. I just wanted to make sure if this is indeed some machine clear happening. The add operations have no reasons to show any bad speculation otherwise.
Link Copied
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page