C++
C++ CI στις GitHub Actions
Κάθε μονάδα μετάφρασης επανασυντάσσεται ακόμη και όταν δεν έχει αλλάξει κάτι σχετικό.
28μ → 6μ
Πλήρης κατασκευή
28m → 90s
Αυξητική
88%
ccache χτύπημα
Γιατί συμβαίνει
Τι να αλλάξει
- Προσθέστε ccache ή scache και διατηρήστε τον κατάλογο προσωρινής μνήμης μεταξύ των εκτελέσεων
- Χρησιμοποιήστε ninja αντί να κάνετε — το γράφημα εξάρτησης είναι ταχύτερο και πιο παράλληλο
- Αποθηκεύστε προσωρινά τους καταλόγους πακέτων vcpkg ή Conan που έχουν πληκτρολογηθεί στο μανιφέστο
- Βασισμένο σε έναν δρομέα 32 vCPU. Η μεταγλώττιση C++ παραλληλίζεται σχεδόν τέλεια
C++ στο runnerhut
Το επόμενο build σας μπορεί να είναι διπλάσια γρήγορο, στη μισή τιμή
Ξεκινήστε δωρεάν. Η αποχώρηση είναι η ίδια μία γραμμή — δημοσιεύουμε κι αυτό το diff.
Σχετικά
RustΤο Cargo δημιουργεί ξανά ολόκληρο το γράφημα εξάρτησης σχεδόν σε κάθε εκτέλεση CI.ΠήγαινεΟι εκδόσεις Go είναι γρήγορες τοπικά και ανεξήγητα αργές στο CI.PythonΗ εγκατάσταση του pip διαρκεί λίγα λεπτά και το pytest εκτελείται σε έναν μόνο πυρήνα.Node.jsΤο npm ci γράφει δεκάδες χιλιάδες μικρά αρχεία σε κάθε εκτέλεση.