Forum Programmation.python Coût de l’introspection

Posté par  . Licence CC By‑SA.
Étiquettes :
2
28
mai
2018

Bonjour à tous,

J’ai une fonction qui se charge d’écrire des messages dans un fichier (les logs de mon application). Cette fonction peut être utilisée par différents objets. Donc pour avoir le maximum d’information dans mes logs, cette fonction fait appel à la fonction currentframe() du module inspect :

from inspect import currentframe
class Logger:
    """Log messages."""
    def __init__(self):
        self.logfile  = sys.stderr
        self.log_time = False

    def __del__(self):
(…)

Wiki [Tuto/HowTo] Transférer les logs en ram avec Log2Ram

0
11
mai
2018

Testé sur : Raspberry Pi 2 (raspbian jessie), Odroid-XU4 (ubuntu-minimal 16.04)

Introduction

Log2Ram est une application permettant de placer les fichiers log en mémoire RAM. L'objectif étant de diminuer le taux d'écritures sur la mémoire système. Cela permet de soulager les vieux disques dur tout en accélérant légèrement le système, ainsi qu'augmenter la durée de vie des mémoires flash (cartes SD, clés USB, etc) utilisées pour le système d'exploitation.
Cette astuce permet d'augmenter la durée (…)

Journal Optimisez votre code !

Posté par  . Licence CC By‑SA.
Étiquettes :
75
7
déc.
2017

Cher journal,
Je voudrais te raconter une histoire, qui n'est peut-être pas encore finie d'ailleurs, qu'on pourrait résumer en 1 mot : OPTIMISATION !

Tout commence en tout début d'année : je suis embauché chez Chacun cherche son Film, une toute petite (5, moi inclus) boite qui développe un site Web faisant la promotion du cinéma indépendant. Cette boite a fait le (très mauvais, comme on va le voir) choix de faire développer son site par une boite de prestation (…)

Wiki [Tuto/HowTo] Stopper la rotation d'un ou plusieurs disques (HDD) sur Ubuntu/Debian

0
15
nov.
2017

Introduction

Nous allons utiliser HDParm afin de stopper la rotation d'un disque. Il faudra répéter l'opération pour chaque disque (y compris si membre d'une grappe type btrfs).
Si un logiciel (exemple mount) sollicite le ou les disques, ils se remettront à tourner automatiquement.
Attention : les disques durs externes ne peuvent pas tous être contrôlés via cette méthode.

Stopper la rotation d'un disque via ligne de commande

Passez en admin (root)
  • Sur Ubuntu / Raspbian
sudo su

Wiki [Tuto/HowTo] Optimiser Zoneminder

0
26
juin
2017

Introduction

ZoneMinder étant un logiciel assez lourd (consommateur de ressources machine et réseau), il peut être intéressant d'optimiser son bon fonctionnement partout où on le peut. Voici quelques clés non-exhaustives afin de diminuer les lags, d'augmenter la durée de vie de certains composants de l’ordinateur, d'améliorer la sécurité, etc…

Optimisations de Zoneminder

Déplacer le dossier Swap de ZoneMinder

Le dossier swap (tampon) est utilisé lorsqu'un client veut visionner des caméras et plus particulièrement lors des retours en arrière et ralentissements (…)

Journal Kotlin + Brainfuck : efficacité, compacité, optimisation

Posté par  (site web personnel, Mastodon) .
43
11
mai
2017

L'une des prétentions de Kotlin, c'est grosso merdo d'être une version moderne et efficace (= sans boilerplate code) de Java.

On va tester ça avec un interpréteur BrainFuck.


La version simple

Le but du jeu est de faire le plus simple possible :

  1. Interprétation bête et méchante du code Brainfuck.
  2. Le code est lu dans un fichier externe dont le chemin est passé en argument.
  3. Si le code BF est pété, le programme fera n'importe quoi (pas (…)

Wiki Tuto/HowTo - Nextcloud activer système de cache (memcache) avec redis

4
29
mar.
2017

Introduction

  • Le système de cache permet de stocker en mémoire RAM (ou en SWAP si trop de RAM utilisée) certaines informations régulièrement sollicitées, évitant ainsi de passer par la base de données (MySQL, PostGreSQL, SQLITE, etc) et augmentant les performances. Si vous utilisez un cache Redis sur une autre machine que le serveur web (par exemple en cluster), utilisez php-apcu pour stocker localement les scripts php précompilés et redis pour les informations qui doivent être partagées entre les serveurs.

Note (…)

Journal [C++14 ] Expressions template pour les nuls

45
31
mai
2016

Expression Templates pour les nuls

Après un contact prolongé avec Joël Falcou, et pas mal de nœuds aux cerveaux pour arriver à émuler le comportement du broadcasting de Numpy avec des expression templates dans Pythran, j'ai eu l'envie soudaine, un peu folle peut-être, de réécrire un moteur d'expressions template en C++14, mais pour faire simple et didactique.

Mais de quoi zy parle

Les expressions templates sont une maintenant assez vieille technique de C++ qui permet par exemple d'éviter de (…)

Forum Programmation.shell Script Bash, tronquer noms de fichiers pour eCryptFS

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
3
16
sept.
2014

Ce script fonctionne déjà ici en production.

Je cherche à l'optimiser car je l'utilise depuis peu sur un plus gros dossier.

Contexte :

Nous souhaitons effectuer des sauvegardes externes de sorte à prévenir l'incendie ou le cambriolage.
Nous souhaitons que cette copie externe soit chiffrée.
Actuellement, elle se trouve sur un disque externe mais sera bientôt synchronisée à partir d'une machine extérieur, via internet (rsync).

eCryptfs est utilisé dans un premier temps pour obtenir une version chiffrée d'une sauvegarde locale (…)

Journal The Timeless hacke ta machine et ton cerveau

48
30
avr.
2014

Du 18 au 21 avril à Saarbrücken (Allemagne), se tenait l’événement Revision 2014, une des plus grandes demoparty du monde. L’équipe Mercury a publié une impressionnante démo dans la catégorie 64K (l’exécutable ne doit pas dépasser 64 Ko en taille) : The Timeless.

La démo dure environ 6 minutes (étape de pré-calcul omise). La première scène nous plonge dans une eau trouble que nous quittons pour contempler un soleil couchant sur une mer agitée, et dès les premières secondes (…)

Journal Performances des processeurs Intel et optimisation

Posté par  (site web personnel) . Licence CC By‑SA.
61
14
mai
2013

Sommaire

Bonjour,

Je préviens d'abord que ce journal aborde des sujets assez pointus et n'intéressant peut-être pas grand-monde. N'étant pas un expert en microprocesseurs et optimisation, ce journal sera très certainement incomplet et incorrect par endroits.

Je vais vous parler d'une aventure très spéciale que j'ai vécue avec mon microprocesseur, alors que je voulais améliorer un morceau de code sur (…)

Forum général.petites-annonces Recherche développeur pour renforcer une équipe développant des outils pour les industries du bois.

Posté par  . Licence CC By‑SA.
11
20
déc.
2012

Nous recrutons un développeur pour renforcer notre équipe sur les sujets comprenant du développement logiciel.

L’équipe est composée de 20 personnes, docteurs, ingénieurs et techniciens, travaillant sur le matériau bois dans toutes ses utilisations: conception de produits et de bâtiments, optimisation de procédés, développements d’outils informatiques et de méthodes de travail, accompagnement de projets industriels…
Les compétences présentent dans l’équipe comprennent déjà : mécanique, chimie, procédés, méthodes d’innovation, organisation industrielle, conception de machines-outils, thermique du bâtiment, conception de produits pour (…)

Journal Ressuscité par ubuntu 12.04 ?

Posté par  .
14
3
mai
2012

Bonjour,
Alors que comme à chaque nouvelle version d'Ubuntu le cortège des pleureurs vient s'épandre en c'était mieux avant, Unity caca, Gnome 2 c'était génial, etc… J'ai décidé de passer mon très vieux portable Dell inspiron 500m de 2004, Pentium M 1.4go, 1,5 Go de ram disque de 30 Go, mais qui a encore l'immense avantage d'être robuste, de tenir toujours 2 bonnes heures sur sa batterie, et surtout un écran mat 1400x1050 qui permet d'afficher une image non déformée (…)