Re: Latency problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2011/11/2 Sankara Muthukrishnan <sankara.m@xxxxxxxxx>:
>
>
> 2011/11/1 Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
>>
>> Thank you very much for your answers.
>>
>> > The hwlatdetect application detects system management interrupts
>> > (SMIs). Such interrupts are installed by the BIOS and are used to manage
>> > various things such as battery management, overheat protection and
>> > emulation of legacy devices (e.g. IDE, PS/2 etc.). You may try to check
>> > your BIOS settings and disable all these or similar features.
>>
>> In fact, after disabling almost all features in the bios, the problem
>> is still here but a little bit reducted (there is just about 20ms
>> latency now.. I think it's linked to the fact the thermal controller
>> is disabled). But I didn't find any reference to SMIs in the bios,
>> neither in the motherboard documentation (Supermicro X7DAL). The
>> computer was not bought for doing realtime, so if it isn't working I
>> think I'll change the computer to use one which has good latency
>> during the tests.
>>
>> > One way to find out whether the spikes in the latency are due to
>> > SMI(System Management Interrupt) is to read the MSR register that
>> > keeps the count of SMIs. So, read the MSR in the start of the test
>> > program and the end of the test and see whether the count has
>> > increased. Unfortunately, it is model-specific-register and I am not
>> > sure whether AMD supports it. I don't think all Intel processors
>> > support it either. I know that Nehalem based Intel Core-i7 arrandale
>> > processor supports counting SMI thru MSR 0x34 and I have not found it
>> > documented in any Intel documentation but found in some reference BIOS
>> > source. I have tested it with legacy USB interrupts and found it to
>> > work. RDMSR is a privilege-0 instruction though.
>>
>> 0x34 is not working for me, it's not returning anything (just that he
>> can't read)
>> > root@station9:/home/xaf/RT# rdmsr 0x34
>> > rdmsr: CPU 0 cannot read MSR 0x00000034
>> The CPU I use here are two Intel(R) Xeon(R) CPU  E5405 @ 2.00GHz, and
>> I am unable to find any documentation about the results of MSR to know
>> what argument I must use to see the number of SMIs. I'll investigate
>> more on this...
>>
>> Thanks one more time !
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-rt-users"
>> in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

If you are building your own kernel, you can try to disable some SMI
sources, even if BIOS does not have an option to disable that. [Note:
Most BIOSes provide more options to configure only in their
development version and not in the release version]. However, you need
to be cautious about what SMIs you are turning off and what the
consequences of turning them off are. Again, I don't know what the
chipset you are using.  To give you an idea, for SMI on ICH9, search
for GLB_SMI_EN bit  and SMI_LOCK in
http://www.intel.com/assets/pdf/datasheet/316972.pdf

Regarding MSR for SMI, like I said, that is specific to CPU
architectures and CPUs. I tried to find where I got that information
for arrandale processors. It is at http://biosbits.org/download/. You
may have to find out or ask the manufacturer whether SMI counter is
supported and what the MSR is. Good luck.
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux