Ένα νέο έμπλαστρο 4 γραμμών που μπορεί να αυξήσει σημαντικά την απόδοση του συστήματός σας

Για να κάνω μια μακρά ιστορία σύντομη, πριν από λίγες ημέρες ένας από τους προγραμματιστές του πυρήνα ανέβασε μια ενημέρωση κώδικα (200 γραμμές κώδικα) που επέτρεψαν να βελτιωθεί σημαντικά (σχεδόν 10 φορές) η απόδοση του συστήματος, ειδικά όταν αντιμετωπίζετε πολλαπλές εργασίες κατά την εκτέλεση μιας βαριάς εργασίας (όπως η μεταγλώττιση του πυρήνα). Ο Linus συγχαίρει αυτόν τον προγραμματιστή για τη μεγάλη του συμβολή. Ωστόσο, ένας προγραμματιστής Red Hat, Ο Lennar Poettering δεν συμφώνησε να εφαρμόσει αυτή τη βελτίωση απευθείας από τον πυρήνα. ήταν καλύτερο για αυτόν να κάνει τις αλλαγές στο χώρο του χρήστη (~ / .bashrc). Ο Linus θυμώθηκε και χτύπησε αυτόν τον προγραμματιστή, λέγοντάς του ότι τα αποτελέσματα μίλησαν από μόνα τους. Ο Λένναρ, αντί να απαντήσει με σκληρά λόγια, κάθισε και σχεδίασε μια εναλλακτική λύση (που δεν χρειάζεται να επιδιορθώσει τον πυρήνα) και καταλαμβάνει μόνο 4 γραμμές. Τελικά, έκλεισαν τον Linus ... 

Σημείωση: αυτή η μέθοδος απαιτεί υποστήριξη για ομάδες εργασιών στο Linux Kernel (cgroups), δηλαδή, μόνο οι χρήστες με Kernel υψηλότερο από 2.6.36 θα μπορούσαν να το εφαρμόσουν.

Πώς να εφαρμόσετε το έμπλαστρο στο Fedora

1. - Επεξεργαστείτε το αρχείο ~ / .bashrc.

gedit ~ / .bashrc

2. - Επικολλήστε τον ακόλουθο κώδικα στο τέλος του αρχείου:

εάν ["$ PS1"]; τότε
mkdir -m 0700 / sys / fs / cgroup / cpu / user / $$
echo $$> / sys / fs / cgroup / cpu / user / $$ / εργασίες
fi

3. - Εκτελέστε τις ακόλουθες εντολές:

mount -t cgroup cgroup / sys / fs / cgroup / cpu -o cpu
mkdir -m 0777 / sys / fs / cgroup / cpu / χρήστης

Πώς να εφαρμόσετε την ενημέρωση κώδικα στο Ubuntu

Στο Ubuntu τα πράγματα είναι λίγο πιο περίπλοκα ...

1. - Επεξεργαστείτε το αρχείο rc. τοπικό με αυτήν την εντολή:

sudo gedit /etc/rc.local

και επικολλήστε πριν που λέει "έξοδος 0", τα εξής:

mkdir -p / dev / cgroup / cpu
mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
mkdir -m 0777 / dev / cgroup / cpu / χρήστης
echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent

2. - Αποθηκεύστε το αρχείο και δώστε του δικαιώματα εκτέλεσης:

sudo chmod + x /etc/rc.local

3. - Επεξεργαστείτε το αρχείο ~ / .bashrc:

gedit ~ / .bashrc

4. - Επικολλήστε τον ακόλουθο κώδικα στο τέλος του αρχείου:

εάν ["$ PS1"];
τότε mkdir -m 0700 / dev / cgroup / cpu / user / $$
echo $$> / dev / cgroup / cpu / user / $$ / task
echo "1"> / dev / cgroup / cpu / user / $$ / notify_on_release
fi

5. - Τροποποιήστε το αρχείο cgroup_clean:

sudo gedit / usr / local / sbin / cgroup_clean

6. - Επικολλήστε τον ακόλουθο κώδικα στο τέλος του αρχείου:

#! / Bin / sh
αν ["$ *"! = "/ χρήστης"]; τότε
rmdir / dev / cgroup / cpu / $ *
fi

7. - Αποθηκεύστε το αρχείο και δώστε του δικαιώματα εκτέλεσης:

sudo chmod + x / usr / local / sbin / cgroup_clean

8. - Επανεκκινήστε το σύστημα.

Σημείωση: εάν δείτε το / dev / cgroup / φάκελο, θα παρατηρήσετε σημαντική βελτίωση στη διαχείριση πολλαπλών εργασιών.

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   Θαλσκάρθ dijo

    Βρήκα τις οδηγίες για το Arch, είναι εδώ: http://pastebin.com/raw.php?i=sHRYRuAN

    Από την πλευρά μου, εφάρμοσα το έμπλαστρο, πολύ βελτίωση δεν παρατηρώ γενικά, αλλά αν παρατηρήσετε μια μεγάλη αλλαγή κατά την κύλιση στις ιστοσελίδες, είναι πραγματικά ρευστές για πρώτη φορά !!! =)

  2.   Ας χρησιμοποιήσουμε το Linux dijo

    Εξαιρετική! Ευχαριστώ πολύ για την κοινή χρήση!
    Σας είπα ότι ψάχνουμε για άτομα που χρησιμοποιούν το Arch στο blog; Αν σας ενδιαφέρει, γράψτε σε ας uselinux@gmail.com
    Μια μεγάλη αγκαλιά! Παύλος.

  3.   Θαλσκάρθ dijo

    Ευχαριστώ για την πρόσκληση, τότε θα συνεχίσουμε μέσω ταχυδρομείου 😉

  4.   Θαλσκάρθ dijo

    Κατά πάσα πιθανότητα δεν θα υπάρχουν οδηγίες για το Archlinux, σωστά; 🙂

  5.   Ας χρησιμοποιήσουμε το Linux dijo

    Δεν τα βρήκα. Αλλά κάτι μου λέει ότι σίγουρα μοιάζει περισσότερο με τη Fedora. Από την άλλη πλευρά, πρέπει να έχουμε κατά νου ότι καθώς όλοι συναρμολογούν το Arch όπως θέλουν, ίσως αυτό επηρεάζει τη διαδικασία που πρέπει να ακολουθηθεί ...

  6.   Θαλσκάρθ dijo

    Εδώ βρήκα πώς να τα εφαρμόσω στο Archlinux, μοιάζει πολύ με το fedora: http://pastebin.com/raw.php?i=sHRYRuAN

  7.   Miquel Mayol i Tur dijo

    bash: / dev / cgroup / cpu / user / $ / tasks: Το αρχείο ή ο κατάλογος δεν υπάρχει

    Ακολούθησα αυτές τις οδηγίες και συνεχίζει να μου λέει αυτό το σφάλμα κατά το άνοιγμα του τερματικού AMD64 x εάν έχει κάτι να κάνει

  8.   Miquel Mayol i Tur dijo

    Το βρήκα ήδη, παρακαλώ διορθώστε το http://www.webupd8.org/2010/11/alternative-to-200-lines-kernel-patch.html

    Τι πρέπει να κάνετε στο ubuntu - αντί για αυτό που βάζετε - είναι:

    sudo gedit / usr / local / sbin / cgroup_clean

    και βάλτε το:

    #! / Bin / sh
    αν ["$ *"! = "/ χρήστης"]; τότε
    rmdir / dev / cgroup / cpu / $ *
    fi

  9.   Ας χρησιμοποιήσουμε το Linux dijo

    Ετοιμος! Διορθώθηκε! Ευχαριστώ!

  10.   Ας χρησιμοποιήσουμε το Linux dijo

    Είναι αλήθεια! Ευχαριστώ που μου το θύμησες!
    Μόλις πρόσθεσα αυτήν την αποσαφήνιση στην αρχή της ανάρτησης.
    Μια αγκαλιά! Παύλος.

  11.   Ντασινεξ dijo

    Συγκεκριμένα, ποια οφέλη θα λάβω ως χρήστης και ποιες βελτιώσεις στην απόδοση θα εμφανίζονται στο σύστημά μου.

  12.   Ας χρησιμοποιήσουμε το Linux dijo

    Όλα πάνε πολύ πιο γρήγορα. Ωστόσο, οι διαφορές είναι πραγματικά «εμφανείς» όταν κάνετε μια βαριά εργασία και θέλετε να κάνετε άλλες εργασίες ταυτόχρονα. Για παράδειγμα, εκτελείτε την εγκατάσταση πολλών προγραμμάτων ή μεταγλωττίζετε τον πυρήνα ή επεξεργάζεστε ένα βαρύ βίντεο και ταυτόχρονα θέλετε να σερφάρετε στο Διαδίκτυο ή να παρακολουθείτε μια ταινία κ.λπ.

  13.   Ας χρησιμοποιήσουμε το Linux dijo

    Επιτρέψτε μου να ξέρω αν μάθετε πώς να εφαρμόσετε την ενημέρωση κώδικα στο Arch. Θα προσπαθούσα να τρέξω αυτό που λειτουργεί στο Fedora.
    Αγκαλιάζω! Παύλος.

  14.   Ας χρησιμοποιήσουμε το Linux dijo

    Υποθέτω ότι εξαρτάται από τη χρήση που δίνετε στον υπολογιστή σας. Εάν χρησιμοποιείτε μόλις το Διαδίκτυο και κάποιο πρόγραμμα επεξεργασίας ελαφρού κειμένου ... δεν θα "αισθανθείτε" τη διαφορά. Από την άλλη πλευρά, εάν είστε σαν εμένα και κάνετε βαριές εργασίες (όπως μετατροπή βίντεο, μεταγλώττιση του πυρήνα κ.λπ.) κατά την περιήγηση στο Διαδίκτυο ή την παρακολούθηση ταινιών, μπορείτε να πείτε τη διαφορά.

  15.   Ντομίνγκοπ dijo

    Μετά από όλα τα βήματα, όταν ανοίγω το τερματικό παίρνω πάντα τα εξής:
    mkdir: Δεν είναι δυνατή η δημιουργία καταλόγου "/ dev / cgroup / cpu / user / 1844": Δεν υπάρχει αρχείο ή κατάλογος
    bash: / dev / cgroup / cpu / user / 1844 / task: Το αρχείο ή ο κατάλογος δεν υπάρχει
    bash: / dev / cgroup / cpu / user / 1844 / notify_on_release: Το αρχείο ή ο κατάλογος δεν υπάρχει
    domingopv @ pc1: ~ $
    Όλα λειτουργούν καλά ακόμα και στο τερματικό, κάνατε κάτι λάθος;

  16.   Ας χρησιμοποιήσουμε το Linux dijo

    Χμμ ... πραγματικά δεν ξέρω τι μπορεί να είναι. Ωστόσο, έχω την εντύπωση ότι είναι πολύ πιθανό ότι δεν έχετε κάνει καλά κάποια από τα βήματα, ειδικά από το 5 και μετά. Δοκιμάστε να τα επαναλάβετε ή να βεβαιωθείτε ότι τα έχετε σωστά. Αυτό είναι το μόνο που μπορώ να σκεφτώ για τώρα.
    Μια μεγάλη αγκαλιά! Παύλος.

  17.   Ντομίνγκοπ dijo

    Επανεγκαταστήστε το maverick και επανεγκαταστήστε την ενημέρωση κώδικα και τώρα έχω τα ακόλουθα.
    mkdir: Δεν είναι δυνατή η δημιουργία καταλόγου "/ dev / cgroup / cpu / user / 1678": Δεν υπάρχει αρχείο ή κατάλογος
    bash: / dev / cgroup / cpu / user / 1678 / task: Το αρχείο ή ο κατάλογος δεν υπάρχει
    bash: / dev / cgroup / cpu / user / 1678 / notify_on_release: Το αρχείο ή ο κατάλογος δεν υπάρχει
    domingopv @ pc1: ~ $

  18.   Ας χρησιμοποιήσουμε το Linux dijo

    Δεν ξέρω τι μπορεί να είναι. Δούλεψε τέλεια για μένα.
    Κάτι μου λέει ότι η εκκαθάριση ομάδας δεν έχει γίνει καλά. Γι 'αυτό επέμεινα ότι βλέπετε από το βήμα 5 και μετά.
    Στην υγειά σας! Παύλος.

  19.   δεν λέω dijo

    Μητέρα μου, εντυπωσιακή, μπορώ να δω 1080p flash βίντεο σε ένα παθητικό nvidia 8400, εννοώ, κακό κακό, ΤΕΛΕΙΑ, το cpus όλα λειτουργούν, υπέροχο uffff, που βελτιώνεται, είναι πολύ καλύτερο, έχω το Ubuntu 10.04 😀 τόσο καλό, τα βίντεο είναι καλά για μένα χαχαχα 😀

  20.   Delano dijo

    Τι rc.local; Υπάρχουν πολλά, ποια είναι; Χαιρετίσματα.

  21.   Ας χρησιμοποιήσουμε το Linux dijo

    Μόλις έγραψα τις εντολές που αναφέρονται στο σημείο 4. Δεν χρειάζεται να το αντιγράψετε σε ένα αρχείο αλλά να εκτελέσετε αυτές τις εντολές.
    Στην υγειά σας! Παύλος.

  22.   Συμβουλές GNU / Linux dijo

    Δεν εξηγείται ελάχιστα.

    Αυτό που πρέπει να κάνετε είναι να επεξεργαστείτε το αρχείο rc.local με:

    sudo gedit /etc/rc.local

    Πρέπει να επικολλήσετε μέσα (πριν από την έξοδο 0):

    mkdir -p / dev / cgroup / cpu
    mount -t cgroup cgroup / dev / cgroup / cpu -o cpu
    mkdir -m 0777 / dev / cgroup / cpu / χρήστης
    echo "/ usr / local / sbin / cgroup_clean"> / dev / cgroup / cpu / release_agent

    Αυτό είναι το πρόβλημα. Αυτά τα βήματα δεν εξηγούνται ελάχιστα.

  23.   Ας χρησιμοποιήσουμε το Linux dijo

    Εχεις δίκιο! Λέει ξεκάθαρα, "επεξεργασία του αρχείου rc.local." Αυτό που έλειπε να προσθέσω είναι η εντολή να κάνουμε κάτι τέτοιο (για το οποίο κάποιοι μπορεί να μην γνωρίζουν). Το προσθέτω τώρα.
    Ευχαριστώ για την ειδοποίηση! Χαιρετισμοί! Παύλος.

  24.   Αισπινόζα dijo

    Ποια θα ήταν η διαδικασία στο PCLinuxOs;

  25.   Ας χρησιμοποιήσουμε το Linux dijo

    Η αλήθεια είναι ότι δεν ξέρω…
    Εάν το μάθετε, μην ξεχάσετε να μοιραστείτε τα δεδομένα με τα υπόλοιπα!
    Σας ευχαριστούμε πάρα πολύ!
    Στην υγειά σας! Παύλος.

  26.   Γκονό dijo

    Μου φαίνεται ή δεν έχετε αναφέρει από πού το πήρατε; Μπορείτε να μου πείτε την πηγή;

    Ευχαριστίες

  27.   Ας χρησιμοποιήσουμε το Linux dijo

    Δεν υπάρχει μεμονωμένη πηγή. Έψαχνα πώς να το κάνω από διαφορετικές πηγές και από τη δική μου προσωπική εμπειρία. Σε γενικές γραμμές, μπορώ να σας πω ότι οι πηγές είναι τα εκατομμύρια ιστολογίων που αναπαράγουν αυτές τις ειδήσεις. Αναζητήστε "patch 200 linux kernel lines" και θα δείτε τι μιλάω. Δεν θυμάμαι ακριβώς, αλλά το τμήμα του Ubuntu μπορεί να έχει ληφθεί από το WebUpd8. όχι τόσο για τη Fedora.

  28.   τύχη0921 dijo

    Είμαι χρήστης εδώ και πολύ καιρό, του ubuntu 64 bit και όταν βλέπω αυτήν την συμβουλή αρχίζω να ερευνούμαι και ο τρέχων πυρήνας που έχω είναι 2.6.32-27 σύμφωνα με την ανάρτηση, αυτό το patch μπορεί να εφαρμοστεί μόνο σε πυρήνες που είναι υψηλότερο ή ίσο με 2.6.36 Η ερώτησή μου είναι εάν αυτή η αλλαγή λειτουργεί μόνο για διανομές 32 bit ή στην τρέχουσα διανομή μου μπορεί ο πυρήνας να ενημερωθεί σε 2.6.36;

    Ευχαριστώ για όλες τις πληροφορίες στον Ιστό, εξαιρετικό υλικό.

  29.   Ας χρησιμοποιήσουμε το Linux dijo

    Αυτή η αλλαγή λειτουργεί για 32 και 64 bit.
    Στην υγειά σας! Παύλος.

  30.   Κύριε Tuxito dijo

    σε μια ερώτηση, και αυτό δεν θα χάσει καμία μελλοντική ενημέρωση;
    Εάν δεν πήγε καλά, ποιο θα ήταν το χειρότερο που θα μπορούσε να συμβεί;
    (Βλέπετε ότι μετά απλώς το Ubuntu 10.04 σε 10.10 συντρίβει τα πάντα)

  31.   Ιησέλαρα dijo

    Το πρώτο πράγμα που πρέπει να αποσαφηνιστεί (για να αποφευχθεί η ανεύθυνη χρήση της μεθόδου) είναι ότι απαιτεί υποστήριξη για ομάδες εργασιών στο Linux Kernel (cgroups), δηλαδή, μόνο χρήστες με Kernel υψηλότερο από 2.6.36 θα μπορούσαν να εφαρμόσουν αυτήν τη μέθοδο βελτίωσης.