Synchronizing TSC

Alexander Motin mav at FreeBSD.org
Tue Apr 16 22:04:45 UTC 2013


Hi.

Recently I've got 6-core/12-thread system on Sandy Bridge-E Core 
i7-3930K CPU and was unpleasantly surprised to see that TSCs are not 
synchronized there. While all 11 APs were synchronized, BSP was far 
behind them. Since it is single-socket system, I don't know any good 
reason for such behavior except some BIOS bug. But I've recalled that 
somewhere was some discussions about possible TSC synchronization. I've 
implemented patch below that allows to adjust TSC values of BSPs to AP's 
one on boot using CPU MSRs, hoping that they should not diverge after 
that: http://people.freebsd.org/~mav/tsc_adj2.patch

I don't know very much about all different TSC hardware to predict when 
it is safe to enable the functionality, but at least on my system being 
enabled via loader tunable it seems working well.

Comments?

-- 
Alexander Motin


More information about the freebsd-hackers mailing list