Aν έχετε φορτώσει κάποιο προφίλ, να ψάξετε αρχικά να δείτε τι κάνει αυτό.
Πχ, κοιτάω τώρα, στο github τους (που έχει να ανανεωθεί εδώ και κάτι αιώνες), υπάρχει μια πρώιμη λογικά εκδοχή του orion-optimize.sh script:
https://github.com/RuneAudio/RuneUI/blob/master/command/orion_optimize.sh
Θα πρέπει να κατανοήσετε με ψάξιμο τι ήδη εφαρμόζουν οι developers του runeudio. Εγώ πχ στην επόμενη έκδοση τα περισσότερα από αυτά θα τα έχω προρυθμισμένα. Αν πάει κάποιος να βάλει τις δικές του εντολές σε ένα script θα τα κάνει σκατά! Μπορεί κάτι ανάλογο να έχουν κάνει και στο runeaudio.
Υποθέτοντας ότι έχετε κάνει τα παραπάνω, ένα καλό βήμα είναι να παρακολουθήσετε τα interrupts και να κλειδώσετε τον mpd σε ένα core που δεν κάνει και πολλή δουλειά.
Αυτό που θα πω για τελευταία φορά, είναι ότι εγώ τα έκανα όλα αυτά με αφορμή τα 8500 interrupts/sec του usb του odroid. Τόσα πολλά interrupts μπορεί όντως να τα κάνουν μαντάρα οπότε θέλουν φροντίδα:
http://avclub.gr/forum/showthread.p...-C1-C2?p=1057760740&viewfull=1#post1057760740
http://avclub.gr/forum/showthread.p...-C1-C2?p=1057761020&viewfull=1#post1057761020
Να σημειωθεί ότι το taskset που έδινα στο πρώτο link δεν είναι σωστό. Το σωστό είναι αυτό που έδωσα στο νήμα που συζητάμε τώρα.
Τελος, ο καλύτερος τρόπος για να δίνετε εντολές σε κάθε εκκίνηση είναι με τη δημιουργία ενός systemd.service.
Τι εννοώ:
1. Φτιάχνουμε ένα αρχείο με όνομα πχ seekanddestroy.service:
Code:
[Unit]
Description=Various Tweaks for Crazy Audiophiles
After=network.target
[Service]
ExecStart=/usr/local/bin/optimizer
Type=simple
[Install]
WantedBy=multi-user.target
Το αρχείο αυτό το σώζουμε στο:
Αυτό το service, όταν το κάνουμε enable, θα τρέχει σε κάθε εκκίνηση και θα εκτελέι την εντολή:
Αυτό που μας μένει να φτιάξουμε είναι.... η παραπάνω εντολή:
Code:
nano /usr/local/bin/optimizer
εδώ θα βάλουμε στην πρώτη γραμμή το παρακάτω, για να δηλώσουμε ότι είναι bash script:
Από κάτω θα πετάξουμε όποια εντολή θέλουμε να τρέξει στην εκκίνηση. ΑΝ πχ θέλουμε απλά και μόνο να πετάξουμε τον mpd στο τέταρτο core, το αρχέιο θα είναι:
Code:
#!/bin/bash
#This command forces mpd to run only on 4th core
taskset -c -a -p 1 $(pidof mpd)
Αφού σώσουμε το script μας, το κάνουμε εκτελέσιμο:
Code:
chmod 755 /usr/local/bin/optimizer
Τέλος ενεργοποιούμε το service που φτιάξαμε:
Code:
systemctl enable seekanddestroy
Από το επόμενο boot, κάθε φορά θα τρέχει αυτό το service, θα εκτελέι το optimizer script το οποίο θα έχει μέσα τις επιθυμητές εντολές.