New Garbage Collector

Ouverte
#38 20 commentaires 20 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

  • #1058 par @achaulk — fermée sans fusion

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
5/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
À l'abandon
Stack technique
c
Domaine
compilers

Piste de recherche

The issue points only to a design page on the LuaJIT wiki (New-Garbage-Collector) and names no source files, tests or entry points. Start with that design and the closed, unmerged pull request #1058 to see why it was not accepted. Done here means an agreed design and scope from the maintainers, not a patch; treat this as design work.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

3.0 difficult enhancement

The garbage collector used by LuaJIT 2.x is essentially the same as the Lua 5.1 GC. The current garbage collector is relatively slow compared to implementations for other language runtimes. It's not competitive with top-of-the-line GCs, especially for large workloads.

A suitable design for a new garbage collector can be found here: http://wiki.luajit.org/New-Garbage-Collector

This is an arena-based, quad-color incremental, generational, non-copying, high-speed, cache-optimized garbage collector.

This is a major change and probably demands a major version bump, whenever it materializes.

Langage dominant
C
Étoiles
5.8k
Forks
1.2k
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de LuaJIT/LuaJIT

Toutes les issues de LuaJIT/LuaJIT

Issues similaires

Plus d'issues C

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.