[Rtai] Source of big latencies???

Federico Bergero fedebergero at gmail.com
Tue Sep 27 18:36:54 CEST 2011


Sorry, I didn't follow you Paolo.
I should disable ACPI from the BIOS or recompile the kernel without
ACPI support?
I didn't understand neither what you said about SMI.
When I install the module I get:
insmod: error inserting './rtai_smi.ko': -1 No such device
RTAI: Intel chipset not found.

How can I know 1) if I have a intel chipset 2) If I don't have one, I
need to do something else?

Thanks in advance!
Fede

2011/9/27 Paolo Mantegazza <mantegazza at aero.polimi.it>:
> Federico Bergero wrote:
>>
>> Ok. I'll try setting only one core without HT in the bios.
>> That way Linux will only use one core.
>>
>
> I think there is no such a need, you have just to disable SMO on your
> system. A few times I've seen that just diabling ACPI set the PC UP.
> If you are using an INTEL chipset than the missing of it is likely related
> to the fact that SMI disabling RTAI need to have it listed.
>
> paolo
>
>> Anyway I'm using LXRT so I'm not using the UP nor the SMP (nor the
>> MUP) scheduler,right?.
>>
>> I tried taking care of SMI but when I insert the module it tells me
>> "No intel chip detected", so I thought that didn't need to do
>> anything. Is this correct? Or I have to do something anyway?
>>
>> I'll reply later with the new results
>>
>> Thanks
>>
>> Fede
>>
>> 2011/9/27 Paolo Mantegazza <mantegazza at aero.polimi.it>:
>>>
>>> Federico Bergero wrote:
>>>>
>>>> What do you mean by uni-processor?
>>>> I have disabled HT but still got 6 cores (a small SMP system).
>>>> Anyway the test fails with only one thread, so I don't think that HT
>>>> or multiple cores have anything to do with it.
>>>> In theory RTAI shouldn't give the processor back to Linux if the RTAI
>>>> task is doing something (like in a busy wait), right? If so, what
>>>> could have HIGHER priority than RTAI task? Bios? ACPI/APM?
>>>>
>>> To play with the config you should first configure Linux as UP. If the
>>> latency remains than you have to know what hardware you bought. If it
>>> does
>>> not than you have a clue related to what your hardware does SMP. Have
>>> cared
>>> of SMI already?
>>> Please keep posting to the list.
>>>
>>>
>>> paolo
>>>
>>>> Grazie tante!
>>>> Fede
>>>>
>>>> 2011/9/27 Paolo Mantegazza <mantegazza at aero.polimi.it>:
>>>>>
>>>>> Federico Bergero wrote:
>>>>>>
>>>>>> I have disabled HT in the BIOS (now running with 6cores)
>>>>>> I'm still getting a source of high latencies.
>>>>>> I found out that these big latencies are PERIODIC (?)
>>>>>> They occur every 2.43 seg.
>>>>>> I'm attaching the test I have run.
>>>>>>
>>>>>> I'm using the kernel from
>>>>>> http://hart.sourceforge.net/rtai_installation_10_04.html
>>>>>>
>>>>>> Any ideas what could be going on?
>>>>>>
>>>>> Have you tried the latency test after making your machine as if it was
>>>>> UP.
>>>>>
>>>>> paolo
>>>>>
>>>>>
>>>>>> These is the output of the test:
>>>>>> [   58.336000] Error diff 2343675702
>>>>>> [   58.336000] Error diff 2343677010
>>>>>> [   59.628000] Error diff 2343704223
>>>>>>
>>>>>> 2011/9/26 Paolo Mantegazza <mantegazza at aero.polimi.it>:
>>>>>>>
>>>>>>> Federico Bergero wrote:
>>>>>>>>
>>>>>>>> Hi I'm working on a project with rtai.
>>>>>>>> I'm using a Intel i7 with 6 cores and HT so Linux sees 12 cores.
>>>>>>>> I'm running a real time LXRT-RTAI thread on each core (indicating
>>>>>>>> RTAI
>>>>>>>> to do so with the cpus_allowed mask).
>>>>>>>>
>>>>>>>> Each thread runs a simulation of a system syncrhonized with real
>>>>>>>> time,
>>>>>>>> and I'm using rt_sleep/rt_busy_sleep to do the waits.
>>>>>>>> When running the simulation SOMETIMES I get a max latencies of 900us
>>>>>>>> on some processor and 2us on others processors.
>>>>>>>> These BIG latencies occur randomly. Sometimes everything runs
>>>>>>>> smoothly.
>>>>>>>> What could be the source of these lantencies? I have turned off Freq
>>>>>>>> Scaling in Linux and SpeedStep in the BIOS.
>>>>>>>>
>>>>>>>> Also I don't quiet understand how the rt_get_cpu_time_ns() is
>>>>>>>> implemented on a SMP system, could someone explain me this?
>>>>>>>>
>>>>>>>> Thanks Fede
>>>>>>>>
>>>>>>> First of all do not use HT.
>>>>>>> On your machine rt_get_cpu_time_ns() simply reads and converts the
>>>>>>> APIC
>>>>>>> timer on each CPU. You can check if their are big difference intra
>>>>>>> CPUs
>>>>>>> by
>>>>>>> configuring RTAI to do so.
>>>>>>>
>>>>>>> paolo
>>>>>>>
>>>>>>>
>>>>>>> paolo
>>>>>>>
>>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>
>>
>>
>
>



-- 
I find television very educational. Every time someone switches it on,
I go into another room and read a good book.


More information about the Rtai mailing list