`dup`ing an Identity Hash/Set is faster than creating a new one
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 52/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- ruby
- Domaine
- performance
Piste de recherche
Commencez par localiser le format existant des entrées de benchmark ou d’idiom du dépôt, puisqu’aucun fichier cible n’est indiqué. Utilisez les exemples Benchmark.ips fournis pour identity Hash et Set, et considérez le travail comme terminé lorsque le dépôt consigne la comparaison ainsi que son résultat d’allocation ou de performance de manière cohérente avec ses autres entrées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
It's one less allocation, too :)
| YJIT off | YJIT on | |
|---|---|---|
Set.new.compare_by_identity |
2.571M | 4.260M |
S.dup |
3.014M | 4.999M |
| ∆ | 1.17x | 1.17x |
| YJIT off | YJIT on | |
|---|---|---|
Hash.new.compare_by_identity |
5.643M | 8.208M |
H.dup |
5.988M | 9.014M |
| ∆ | 1.06x | 1.09x |
S = Set.new.compare_by_identity.freeze
H = Hash.new.compare_by_identity.freeze
Benchmark.ips do |x|
x.config(time: 10)
x.report(".new.compare_by_identity") do |times|
i = 0
while (i += 1) <= times
S.dup
end
end
x.report(".dup ") do |times|
i = 0
while (i += 1) <= times
Set.new.compare_by_identity
end
end
x.compare!
end
Benchmark.ips do |x|
x.config(time: 10)
x.report(".new.compare_by_identity") do |times|
i = 0
while (i += 1) <= times
H.dup
end
end
x.report(".dup ") do |times|
i = 0
while (i += 1) <= times
Hash.new.compare_by_identity
end
end
x.compare!
end
- Langage dominant
- Ruby
- Étoiles
- 5.7k
- Forks
- 369
- Merge moyen
- 10 h 32 min
- PR mergées (30 j)
- 16
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de fastruby/fast-ruby
-
Difficulté 3/5 1-2 jours Accessibilité débutants 35/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 45/100
fastruby/fast-ruby#220 · 6 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 42/100
fastruby/fast-ruby#208 · 7 commentaires · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
[FEATURE REQUEST] Use the project's WIKI to share results for each Ruby version with latest CI resultsPeut-être pris @JuanVqz l’a pris il y a 11 jours. Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 30/100
fastruby/fast-ruby#206 · 4 commentaires · 1 réaction · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
Suggestion
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
fastruby/fast-ruby#205 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de fastruby/fast-ruby
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
scanaislop/aislop#476 ·
Les mainteneurs répondent en général sous 1 jour
-
Dependencies view: `getParent` loops forever on untitled documents, extension host runs out of memoryPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
area/web interface
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
mastodon/mastodon#41000 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 82/100
zerocracy/judges-action#2743 ·
Les mainteneurs répondent en général sous 8 jours
-
Deno Runtime is discontinuedOuvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
endoflife-date/endoflife.date#11314 ·
Les mainteneurs répondent en général sous 1 jour