<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>I can confirm my IRQ settings is terrible. I was reminded of
      "realtimeconfigquickscan" and ran the tests.</p>
    <p>Yet I still have no clue what to do :S</p>
    <p><br>
    </p>
    <p>(IRQ settings bellow)<br>
    </p>
    <p><b>perl ./realTimeConfigQuickScan.pl</b><br>
      == GUI-enabled checks ==<br>
      Checking if you are root... no - good<br>
      Checking filesystem 'noatime' parameter... 4.4.4 kernel - good<br>
      (relatime is default since 2.6.30)<br>
      Checking CPU Governors... CPU 0: 'powersave' CPU 1: 'powersave'
      CPU 2: 'powersave' CPU 3: 'powersave'  - not good<br>
      Set CPU Governors to 'performance' with 'cpufreq-set -c
      &lt;cpunr&gt; -g performance'<br>
      See also: <a class="moz-txt-link-freetext" href="http://linuxmusicians.com/viewtopic.php?f=27&amp;t=844">http://linuxmusicians.com/viewtopic.php?f=27&amp;t=844</a><br>
      Checking swappiness... 60 - not good<br>
      ** vm.swappiness is larger than 10<br>
      set it with '/sbin/sysctl -w vm.swappiness=10'<br>
      See also:
<a class="moz-txt-link-freetext" href="http://linuxmusicians.com/viewtopic.php?f=27&amp;t=452&amp;start=30#p8916">http://linuxmusicians.com/viewtopic.php?f=27&amp;t=452&amp;start=30#p8916</a><br>
      Checking for resource-intensive background processes... none found
      - good<br>
      Checking checking sysctl inotify max_user_watches... &gt;= 524288
      - good<br>
      Checking access to the high precision event timer... not readable
      - not good<br>
      /dev/hpet found, but not readable.<br>
      make /dev/hpet readable by the 'audio' group<br>
      For more information, see
      <a class="moz-txt-link-freetext" href="http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers">http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers</a><br>
      Checking access to the real-time clock... not readable - not good<br>
      /dev/rtc found, but not readable.<br>
      make /dev/rtc readable by the 'audio' group<br>
      For more information, see
      <a class="moz-txt-link-freetext" href="http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers">http://wiki.linuxaudio.org/wiki/system_configuration#hardware_timers</a><br>
      Checking whether you're in the 'audio' group... yes - good<br>
      Checking for multiple 'audio' groups... no - good<br>
      Checking the ability to prioritize processes with chrt... yes -
      good<br>
      Checking kernel support for high resolution timers... found - good<br>
      Kernel with Real-Time Preemption... not found - not good<br>
      Kernel without real-time capabilities found<br>
      For more information, see
<a class="moz-txt-link-freetext" href="http://wiki.linuxaudio.org/wiki/system_configuration#installing_a_real-time_kernel">http://wiki.linuxaudio.org/wiki/system_configuration#installing_a_real-time_kernel</a>                                                                                                                                
      <br>
      Checking if kernel system timer is high-resolution... found -
good                                                                                                                                                                          
      <br>
      Checking kernel support for tickless timer... found -
good                                                                                                                                                                                  
      <br>
      == Other checks
==                                                                                                                                                                                                                          
      <br>
      Checking filesystem types...
ok.                                                                                                                                                                                                            
      <br>
ok.                                                                                                                                                                                                                                         
      <br>
      ** Set $SOUND_CARD_IRQ to the IRQ of your soundcard to enable more
checks.                                                                                                                                                                  
      <br>
         Find your sound card's IRQ by looking at '/proc/interrupts' and
      lspci.     <br>
    </p>
    <div class="moz-cite-prefix">Le 16/05/2016 à 19:11, Etienne Rouge a
      écrit :<br>
    </div>
    <blockquote
      cite="mid:88655adc-454a-2e98-bfba-eae43950cf9b@yahoo.com"
      type="cite">
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      <p>Hi ! Here are all the commands related to IRQ :</p>
      <p><u><b>rtirq status</b></u><br>
        <br>
          PID CLS RTPRIO  NI PRI %CPU STAT COMMAND    <br>
          699 FF      50   -  90  0.0 S    irq/36-mei_me    <br>
            3 TS       -   0  19  0.0 S    ksoftirqd/0    <br>
           15 TS       -   0  19  0.0 S    ksoftirqd/1    <br>
           22 TS       -   0  19  0.0 S    ksoftirqd/2    <br>
           29 TS       -   0  19  0.0 S    ksoftirqd/3    <br>
      </p>
      <p><br>
      </p>
      <p><b>cat /proc/interrupts</b></p>
      <p>           CPU0       CPU1       CPU2       CPU3       <br>
          0:         27          0          0          0   IO-APIC  
        2-edge      timer<br>
          1:          2          0          0          0   IO-APIC  
        1-edge      i8042<br>
          8:          1          0          0          0   IO-APIC  
        8-edge      rtc0<br>
          9:          0          0          0          0   IO-APIC  
        9-fasteoi   acpi<br>
         12:          4          0          0          0   IO-APIC 
        12-edge      i8042<br>
         14:          0          0          0          0   IO-APIC 
        14-edge      ata_piix<br>
         15:      30394          0          0          0   IO-APIC 
        15-edge      ata_piix<br>
         16:        916          0          0          0   IO-APIC 
        16-fasteoi   ehci_hcd:usb1<br>
         17:        877          0          0          0   IO-APIC 
        17-fasteoi   snd_hda_intel<br>
         18:          0          0          0          0   IO-APIC 
        18-fasteoi   i801_smbus<br>
         19:      71018          0          0          0   IO-APIC 
        19-fasteoi   ata_piix, firewire_ohci<br>
         23:      12208          0          0          0   IO-APIC 
        23-fasteoi   ehci_hcd:usb2<br>
         25:          0          0          0          0   PCI-MSI
        1572864-edge      xhci_hcd<br>
         26:          0          0          0          0   PCI-MSI
        1572865-edge      xhci_hcd<br>
         27:          0          0          0          0   PCI-MSI
        1572866-edge      xhci_hcd<br>
         28:          0          0          0          0   PCI-MSI
        1572867-edge      xhci_hcd<br>
         29:          0          0          0          0   PCI-MSI
        1572868-edge      xhci_hcd<br>
         30:          0          0          0          0   PCI-MSI
        3145728-edge      xhci_hcd<br>
         31:          0          0          0          0   PCI-MSI
        3145729-edge      xhci_hcd<br>
         32:          0          0          0          0   PCI-MSI
        3145730-edge      xhci_hcd<br>
         33:          0          0          0          0   PCI-MSI
        3145731-edge      xhci_hcd<br>
         34:          0          0          0          0   PCI-MSI
        3145732-edge      xhci_hcd<br>
         35:      12841          0          0          0   PCI-MSI
        3670016-edge      enp7s0<br>
         36:         11          0          0          0   PCI-MSI
        360448-edge      mei_me<br>
         37:        811          0          0          0   PCI-MSI
        442368-edge      snd_hda_intel<br>
         38:      14631          0          0          0   PCI-MSI
        524288-edge      nvidia<br>
        NMI:          4          3          3          3   Non-maskable
        interrupts<br>
        LOC:      91745      78005      78657      79401   Local timer
        interrupts<br>
        SPU:          0          0          0          0   Spurious
        interrupts<br>
        PMI:          4          3          3          3   Performance
        monitoring interrupts<br>
        IWI:          1          0          0          0   IRQ work
        interrupts<br>
        RTR:          0          0          0          0   APIC ICR read
        retries<br>
        RES:       4562       6455       4625       4002   Rescheduling
        interrupts<br>
        CAL:       1402       1274       1271        970   Function call
        interrupts<br>
        TLB:      33470      28308      28856      28427   TLB
        shootdowns<br>
        TRM:          0          0          0          0   Thermal event
        interrupts<br>
        THR:          0          0          0          0   Threshold
        APIC interrupts<br>
        DFR:          0          0          0          0   Deferred
        Error APIC interrupts<br>
        MCE:          0          0          0          0   Machine check
        exceptions<br>
        MCP:          4          4          4          4   Machine check
        polls<br>
        ERR:          0<br>
        MIS:          0<br>
        PIN:          0          0          0          0  
        Posted-interrupt notification event<br>
        PIW:          0          0          0          0  
        Posted-interrupt wakeup event<br>
      </p>
      <p><br>
      </p>
      <p><b>/etc/sysconfig/rtirq</b><br>
        <br>
      </p>
      <p>RTIRQ_NAME_LIST="rtc firewire_ohci" &lt;- the only line I've
        changed<br>
        RTIRQ_PRIO_HIGH=70<br>
        RTIRQ_PRIO_DECR=1<br>
        RTIRQ_PRIO_LOW=65<br>
        RTIRQ_PRIO_UDEV=70<br>
        RTIRQ_PRIO_DEFAULT=50<br>
        RTIRQ_RESET_ALL=0<br>
        RTIRQ_NON_THREADED="rtc snd"<br>
      </p>
      <p><br>
      </p>
      <p>rtirq status seems really odd to me, but once again I
        understand very little of this…</p>
      <p><br>
      </p>
      <p>Thanks !</p>
      <p><br>
      </p>
      <p>É<br>
      </p>
      <br>
      <div class="moz-cite-prefix">Le 14/05/2016 à 05:36, Fernando
        Lopez-Lezcano a écrit :<br>
      </div>
      <blockquote cite="mid:57369D39.3080303@ccrma.stanford.edu"
        type="cite">On 05/13/2016 09:14 AM, Etienne Rouge wrote: <br>
        <blockquote type="cite"> <br>
          Thanks for the quick reply. I really appreciate ! <br>
          <br>
          I run Renoise with vanilla plugins. <br>
          <br>
          - CPU Intel(R) Core(TM) i5-2500 CPU @ (quad 3.30GHz) <br>
          - 16gb ram <br>
          <br>
          It should be more than enough. <br>
          <br>
          I have edited /etc/sysconfig/rtirq  with : <br>
          RTIRQ_NAME_LIST="rtc firewire_ohci" (and haven't touched the
          rest made <br>
          by rncbc) <br>
          <br>
          I'm not sure it has done anything... <br>
        </blockquote>
        <br>
        See what priorities you have with "rtirq status"... <br>
        <br>
        <blockquote type="cite">I'll try your script and I'll tell you
          how it goes. <br>
        </blockquote>
        <br>
        You have an i5 cpu so you do not have hyperthreading. Don't run
        the examples that I sent blindly, you have to understand what
        you are doing (if you turn off all 4 cores you are left with
        nothing :-) <br>
        <br>
        -- Fernando <br>
        <br>
        <br>
        <blockquote type="cite">Le 13/05/2016 à 17:43, Fernando
          Lopez-Lezcano a écrit : <br>
          <blockquote type="cite">On 05/13/2016 05:15 AM, Etienne Rouge
            wrote: <br>
            <blockquote type="cite">Hello, <br>
            </blockquote>
            <br>
            Hi Etienne, <br>
            <br>
            <blockquote type="cite">I've recently switched back to CCRMA
              and I'm rather happy with it. <br>
              <br>
              However I still have xruns when I really shouldn't
              (powerfull computer <br>
              and reasonnable amount of tracks/effects). <br>
              <br>
              I've set up PAM…  added "rtc firewire_ohci" to the irq
              file. Honestly, I <br>
              don't quite understand the few tuts I find online and the
              fact they are <br>
              not fedora-oriented don't help. <br>
              <br>
              Is there a crucial step I've missed ? A tutorial I can
              follow ? <br>
            </blockquote>
            <br>
            Could you tell us what hardware is this? What software are
            you <br>
            running? I presume you are running rtirq and you have access
            to <br>
            SCHED_FIFO rt scheduling in your account. <br>
            <br>
            I have found that for critical low latency work using recent
            hardware <br>
            I need to disable hyperthreading (the fake cores on Intel
            processors <br>
            that can't do much) and also set the intel_pstate driver to
            try to use <br>
            all cores at high speed. Also disable thermald if you are
            using it (it <br>
            could also be throttling the processors). Maybe this would
            help? <br>
            <br>
            I have this in a script I run when needed (this is on a four
            core <br>
            Intel laptop with HT): <br>
            <br>
            # get all processors to run fast all the time... <br>
            echo "100" &gt;
            /sys/devices/system/cpu/intel_pstate/min_perf_pct <br>
            <br>
            # turn off hyperthreading which only makes things worse most
            of the time <br>
            # we do this by turning off cpus that have the same "proc
            id" <br>
            echo 0 &gt; /sys/devices/system/cpu/cpu1/online <br>
            echo 0 &gt; /sys/devices/system/cpu/cpu3/online <br>
            echo 0 &gt; /sys/devices/system/cpu/cpu5/online <br>
            echo 0 &gt; /sys/devices/system/cpu/cpu7/online <br>
            <br>
            Best luck! And let us know how it works out... <br>
            -- Fernando <br>
            <br>
          </blockquote>
          <br>
          _______________________________________________ <br>
          PlanetCCRMA mailing list <br>
          <a moz-do-not-send="true" class="moz-txt-link-abbreviated"
            href="mailto:PlanetCCRMA@ccrma.stanford.edu">PlanetCCRMA@ccrma.stanford.edu</a>
          <br>
          <a moz-do-not-send="true" class="moz-txt-link-freetext"
            href="https://cm-mail.stanford.edu/mailman/listinfo/planetccrma">https://cm-mail.stanford.edu/mailman/listinfo/planetccrma</a>
          <br>
        </blockquote>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>