Un mio collega oggi ha impegnato una classe chiamata ThreadLocalFormat, che sostanzialmente spostava istanze di classi Java Format in un thread locale, dal momento che non sono thread-safe e "relativamente costosi" da creare. Ho scritto un test rapido e ho calcolato che avrei potuto creare 200.000 istanze al secondo, gli …
Di recente ho posto una domanda su Stack Overflow per scoprire perché isset () era più veloce di strlen () in PHP . Ciò ha sollevato dubbi sull'importanza del codice leggibile e se vale la pena considerare anche i miglioramenti delle prestazioni dei micro-secondi nel codice. Mio padre è un …
A volte ti imbatti in una situazione in cui devi estendere / migliorare un po 'di codice esistente. Vedi che il vecchio codice è molto snello, ma è anche difficile da estendere e richiede tempo per la lettura. È una buona idea sostituirlo con un codice moderno? Qualche tempo fa …
"L'ottimizzazione precoce è la radice di tutti i mali" è qualcosa che quasi tutti noi abbiamo sentito / letto. Ciò che mi incuriosisce di quale tipo di ottimizzazione non è prematuro, ovvero in ogni fase dello sviluppo del software (progettazione di alto livello, progettazione dettagliata, implementazione di alto livello, implementazione …
Molte domande e risposte sulle pagine C / C ++, in particolare o indirettamente, discutono problemi di micro prestazioni (come il sovraccarico di una funzione indiretta vs diretta vs in linea) o usando un algoritmo O (N 2 ) vs O (N log N) su un elenco di 100 articoli. …
Secondo Wikipedia, la regola del 90/10 dell'ottimizzazione del programma afferma che "il 90% del tempo di esecuzione di un programma viene impiegato nell'esecuzione del 10% del codice" (vedere il secondo paragrafo qui ). Davvero non lo capisco. Cosa significa esattamente? Come si può impiegare il 90% del tempo di esecuzione …
Quando scrivo codice cerco sempre di rendere il mio codice il più pulito e leggibile possibile. Ogni tanto arriva un momento in cui è necessario attraversare la linea e passare da un bel codice pulito a un codice leggermente più brutto per renderlo più veloce. Quando è corretto attraversare quella …
Spesso ci viene detto che all'hardware non importa in quale lingua è scritto un programma poiché vede solo il codice binario compilato, tuttavia questa non è tutta la verità. Ad esempio, considera l'umile Z80; le sue estensioni al set di istruzioni 8080 includono istruzioni come CPIR che è utile per …
Questa è una domanda generale su un argomento che ho trovato interessante come giocatore: colli di bottiglia della CPU / GPU e programmazione. Se non sbaglio, ho capito che sia la CPU che la GPU calcolano cose, ma che in alcuni calcoli uno è migliore dell'altro a causa della differenza …
Go è una delle poche lingue che dovrebbero funzionare "vicino al metal", ovvero è compilata, digitata staticamente ed esegue il codice in modo nativo, senza una VM. Ciò dovrebbe dargli un vantaggio di velocità rispetto a Java, C # e simili. Sembra, tuttavia, che sia dietro Java (vedi il linguaggio …
Dovresti sacrificare la leggibilità del codice con quanto è efficiente il codice? ad es. 3 righe di codice in 1 riga. Ho letto in Code Craft di Pete Goodliffe che la leggibilità è la chiave. I vostri pensieri?
Esiste un compilatore just-in-time disponibile per linguaggi compilati, come C e C ++? (I primi nomi che vengono in mente sono Clang e LLVM! Ma non credo che al momento lo supportino.) Spiegazione: Penso che il software potrebbe trarre vantaggio dal feedback sulla profilazione del runtime e dalla ricompilazione aggressivamente …
Stavo leggendo la risposta popolare su Branch Prediction da https://stackoverflow.com/q/11227809/555690 e c'è qualcosa che mi confonde: Se hai indovinato, continua. Se hai indovinato, il capitano si fermerà, tornerà indietro e ti urlerà per premere l'interruttore. Quindi può riavviare l'altro percorso. Se indovina ogni volta, il treno non dovrà mai fermarsi. …
Sebbene questo non sia obbligatorio nello standard C ++, sembra che GCC, ad esempio, implementa le classi parent, comprese quelle pure astratte, includendo un puntatore alla tabella v per quella classe astratta in ogni istanza della classe in questione . Naturalmente questo gonfia le dimensioni di ogni istanza di questa …
Ho incontrato molte persone che sono dogmaticamente contrarie a qualsiasi cosa possa essere considerata "ottimizzazione" nel senso generale della parola inglese, e molto spesso citano alla lettera la citazione (parziale) "l'ottimizzazione prematura è la radice di tutti i mali" come giustificazione per la loro posizione, sottintendendo che interpretano qualsiasi cosa …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.