WeatherlingJe ne suis heureux que quand il pleut

Que coûte un peu de pluie ?

Mesuré le 28 septembre 2026 · Apple M4 Max · Un écran intégré

Weatherling attire la pluie mobile autour de vos fenêtres, il utilise donc le temps CPU, le travail du GPU et la mémoire pendant son exécution. Les gens ont demandé combien. Voici comment je le mesure, ce que la dernière exécution a trouvé et ce que je dois encore tester.

Sur ce Mac, les deux courtes exécutions par défaut valides ont fait la moyenne 2,97 à 3,75 % d'un cœur de processeur et 375 à 391 Mo de mémoire physique. L'exécution de quatre heures a utilisé davantage de mémoire au fil du temps, atteignant environ 467 Mio avant de se stabiliser au cours de sa dernière heure. Il s’agit de mesures d’une version sur une machine, et non d’une promesse concernant chaque Mac ou la durée de vie de la batterie.

Le Mac et la build que j'ai testés

Cette exécution a utilisé un MacBook Pro avec un Apple M4 Max, 64 Go de mémoire et macOS 27.0. Son écran intégré mesurait 3 456 × 2 234 pixels à l’échelle 2×, avec un taux de rafraîchissement signalé de 120 Hz. Le Mac était branché sur le secteur. La luminosité automatique est restée activée et le travail normal sur le bureau s'est poursuivi avec neuf fenêtres visibles au début. Ce n’était pas un bureau de laboratoire isolé et inactif.

L'application était une version locale étiquetée 1.3 (build 3), basée sur la validation 0ed73f4 avec des modifications supplémentaires de l'audio local et du traçage des entrées enregistrées parallèlement au test. Une version Release utilise les optimisations du compilateur de production ; cela ne signifie pas que cet exécutable exact est la version actuellement disponible sur l'App Store. J'ai gelé une copie avant de collecter des données afin que les modifications ultérieures du code ne puissent pas remplacer l'exécutable testé.

Comment fonctionne une analyse de référence

Je mesure l'application native qui dessine la pluie sur le bureau. Une animation de navigateur, une capture d'écran ou un test de rendu hors écran ne peuvent pas me dire le coût total du maintien d'une superposition en direct parmi les fenêtres ouvertes. Les paramètres temporaires rendent chaque phase reproductible sans écraser les préférences de l'utilisateur.

  1. Commencez par quitter l'application. Enregistrez une base de référence du système d'une minute, puis lancez l'application sans pluie. Donnez-lui 30 secondes pour se déposer et échantillonnez pendant trois minutes.
  2. Exécutez la pluie par défaut. Utilisez l'intensité 0,35, la qualité automatique à 30 ips, le vent et la profondeur fixes, sans le son et les particules proches de la caméra. Échauffez-vous pendant deux minutes, puis mesurez pendant dix.
  3. Faites tomber de fortes pluies. Utilisez l'intensité maximale, la qualité fluide à 60 ips, les particules proches de la caméra et le son. Encore une fois, échauffez-vous pendant deux minutes et mesurez pendant dix.
  4. Répétez trois fois. Les tours répétés montrent des variations qu'un seul nombre favorable cacherait. Terminez avec une autre ligne de base de fermeture d’application.
  5. Laissez la pluie par défaut fonctionner pendant quatre heures. Après un nouvel échauffement, suivez la mémoire et le processeur tout au long de la session la plus longue, y compris la tendance vers sa fin.

La séquence complète dure environ cinq heures et demie. Le harnais de test maintient l'écran éveillé et les préréglages temporaires permettent la pluie sur les applications en plein écran. Il s’agit de conditions de mesure et non de preuves du comportement normal de l’app en veille. Des traces GPU distinctes, des observations de réseau et un instantané de carte mémoire s'exécutent en dehors des fenêtres d'échantillonnage du processeur et de la mémoire. Je vérifie les journaux pour les pauses, les sorties inattendues et le chevauchement du profileur avant d'accepter un résultat.

Les derniers résultats

28 septembre 2026 · plages des moyennes par essai, sauf pour l’unique essai d’endurance
ScénarioÉchantillons terminésCPU moyenMémoire physique moyenne
Sans pluie, nouveau lancement3 × 3 minutes0.23–0.82%26,0 à 26,4 Mio
Pluie par défaut, 30 ips2 valides × 10 minutes2.97–3.75%375,0 à 390,5 Mio
Fortes pluies, 60 ips3 × 10 minutes6.17–10.01%411,7 à 419,3 Mio
Pluie par défaut, endurance4 heures5.64%441,5 Mio

Pourcentages d'utilisation du processeur un noyau à 100 %, et non le processeur entier. La mémoire mesurée est l’empreinte physique, qui inclut les ressources graphiques ; elle diffère de la mémoire résidente, parfois inférieure, affichée par d’autres outils. Les mesures sans pluie viennent de nouveaux lancements avec les effets désactivés, pas de mémoire conservée après l’arrêt d’un effet actif.

Le premier cycle par défaut a été exclu de manière prudente : une règle d'application exclue a interrompu la pluie vers la fin de l'échauffement et l'activité de l'outil de capture d'écran a franchi la limite d'échantillonnage. Toutes les phases sont terminées, mais je n'ai obtenu que deux tours par défaut courts et nets. Le processeur lourd variait également considérablement d'un tour à l'autre. La modification de l'activité du bureau rend difficile l'attribution de cette variation au seul Weatherling.

Pourquoi je le laisse fonctionner pendant quatre heures

Un test de dix minutes peut manquer des allocations qui s'accumulent plus tard. Pendant l'endurance, la mémoire physique est passée de 379,9 à 467,1 Mio, avec un pic échantillonné de 469,7 Mo. Les moyennes horaires étaient de 421,0, 435,0, 442,8 et 467,0 Mio. La dernière heure a été presque stable : sa tendance ajustée était d'environ +0,1 Mio par heure.

Ce plateau tardif constitue une preuve utile, mais il ne prouve pas qu’il n’y a pas de fuites. La croissance antérieure mérite encore d’être étudiée. Le processeur moyen sur les quatre heures était de 5,64 % d'un cœur ; le 95e percentile était de 12,15 %, ce qui signifie que 95 % des intervalles échantillonnés étaient égaux ou inférieurs à ce niveau. Aucune pause du cycle de vie n’a été enregistrée pendant l’endurance. Les basculements répétés, les reconnexions d’affichage et les cycles veille/veille nécessitent des tests séparés.

Travail et fluidité du GPU

Des enregistrements Metal System Trace séparés ont observé environ 30 rappels de présentation par seconde en qualité par défaut et 60 en qualité élevée. Le temps GPU actif moyen au 95e percentile par tampon de commande était de 0,307/0,758 millisecondes pour la valeur par défaut et de 0,375/0,596 millisecondes pour la version lourde. Pour le contexte, une image à 30 ips a un budget de 33,3 ms ; à 60 ips, il a 16,7 ms.

Chaque trace couvre environ 31 secondes. Un intervalle entre rappels dépasse 50 ms en qualité par défaut ; quinze dépassent 25 ms en qualité élevée. Ces rappels décrivent le rythme de présentation, pas une latence d’affichage directe ni un compte exact des images perdues. Le temps d’exécution GPU n’est pas non plus un pourcentage d’utilisation GPU. Le coût du profileur est séparé des mesures CPU et mémoire plus longues.

Qu'en est-il de la durée de vie de la batterie ?

Cet essai ne permet pas de dire combien de minutes d’autonomie Weatherling consomme. J’ai relevé des estimations de puissance système pendant les courtes sessions et observé WindowServer, le processus macOS qui compose le bureau. Ces valeurs incluent les autres apps et l’activité changeante du bureau. Leur soustraction ne donnerait pas une puissance fiable propre à l’app.

L'enregistrement de puissance a commencé à mi-chemin de la première phase de l'application désactivée et s'est terminé au début de l'endurance. La ligne de base initiale d'arrêt et la majeure partie de la phase de quatre heures ne comportent donc aucun échantillon de puissance. Une affirmation utile sur l'autonomie de la batterie nécessite des tests contrôlés hors tension, une luminosité et une charge de travail constantes, ainsi que des comparaisons avec l'application en cours d'exécution et fermée. Je n'ai pas terminé ce test ici.

Comment je garde les mesures honnêtes

L'échantillonneur de processeur lit les compteurs de processus macOS, avec sa conversion de temps vérifiée par rapport à l'horloge du processeur de processus. Il échantillonne la mémoire physique et les E/S du disque toutes les deux secondes environ. J'enregistre le hachage de l'exécutable, la version de l'application, l'état de la source, les paramètres, les horodatages et les journaux de cycle de vie afin qu'un résultat puisse être retracé jusqu'à l'exécution qui l'a produit. Le profilage s'est terminé avant les fenêtres mesurées dans cette exécution et les paramètres enregistrés sont restés inchangés par la suite.

De courts instantanés de réseau ne sont que des observations pendant ces fenêtres ; un instantané vide ne constitue pas la preuve d'une garantie réseau à vie. De même, zéro écriture sur le disque physique ne signifierait pas une activité de fichier logique nulle. Je conserve les traces brutes localement car elles peuvent contenir des informations sur d'autres processus sur le Mac de test. Cette page publie les résultats et conditions globaux.

J'ai toujours besoin de mesures sur des Mac moins puissants, d'écrans externes, de la puissance de la batterie, du mode faible consommation et de transitions systématiques de veille et d'affichage. Cette analyse n’isole pas non plus le coût de chaque Lings™. Les mesures futures utiliseront la même séquence dans la mesure du possible, avec les modifications apportées au matériel, aux paramètres et à la construction mentionnées plutôt que fusionnées dans un seul numéro de titre.

Si les performances semblent différentes sur votre Mac, envoyer un rapport avec votre modèle de Mac, la version de votre application, la configuration de l'affichage et les paramètres de pluie. Ces détails aident à transformer une préoccupation générale en un test que je peux répéter.