Articles of ottimizzazione

Calcola il soffitto di base 2 del registro veloce

Qual è un modo veloce per calcolare il (long int) ceiling(log_2(i)) , in cui l’input e l’output sono interi a 64 bit? Soluzioni per interi firmati o non firmati sono accettabili. Ho il sospetto che il modo migliore sia un metodo che si avvicina alla perfezione, simile a quelli che si trovano qui , ma […]

Qual è il modo più veloce per convertire float in int su x86

Qual è il modo più veloce che conosci per convertire un numero in virgola mobile in un int su una CPU x86. Preferibilmente in C o assemblato (che può essere allineato in C) per qualsiasi combinazione di quanto segue: 32/64/80-bit float -> 32/64-bit intero Sto cercando una tecnica che sia più veloce di lasciare che […]

Interlocked.CompareExchange utilizza una barriera di memoria?

Sto leggendo il post di Joe Duffy sulle letture e le scritture volatili e sulla tempestività , e sto cercando di capire qualcosa sull’ultimo esempio di codice nel post: while (Interlocked.CompareExchange(ref m_state, 1, 0) != 0) ; m_state = 0; while (Interlocked.CompareExchange(ref m_state, 1, 0) != 0) ; m_state = 0; … Quando viene eseguita […]

È ansible eseguire più aggiornamenti con una singola istruzione UPDATE SQL?

Diciamo che ho una tabella tbl con colonne id e titolo . Devo cambiare tutti i valori della colonna del titolo: da ‘a-1’ a ‘a1’, da ‘a.1’ a ‘a1’, da ‘b-1’ a ‘b1’, da ‘b.1’ a ‘b1’. Al momento, sto eseguendo due istruzioni UPDATE: UPDATE tbl SET title=’a1′ WHERE title IN (‘a-1’, ‘a.1’) UPDATE tbl […]

Ottimizzazione dell’iperparametro per strutture di deep learning mediante l’ottimizzazione bayesiana

Ho costruito una struttura CLDNN (Convolutional, LSTM, Deep Neural Network) per l’attività di classificazione dei segnali grezzi. Ogni epoca di allenamento dura circa 90 secondi e gli iperparametri sembrano essere molto difficili da ottimizzare. Ho cercato vari modi per ottimizzare gli iperparametri (ad esempio ricerca casuale o griglia) e ho scoperto l’ottimizzazione bayesiana. Anche se […]

Versione più veloce di ricerca per vettori ordinati (MATLAB)

Ho il codice del seguente tipo in MATLAB: indices = find([1 2 2 3 3 3 4 5 6 7 7] == 3) Questo restituisce 4,5,6 – gli indici degli elementi nella matrice pari a 3. Ora. il mio codice fa questo genere di cose con vettori molto lunghi. I vettori sono sempre ordinati . […]

Il compilatore C # è abbastanza intelligente da ottimizzare questo codice?

Si prega di ignorare la leggibilità del codice in questa domanda. In termini di prestazioni, dovrebbe essere scritto il seguente codice in questo modo: int maxResults = criteria.MaxResults; if (maxResults > 0) { while (accounts.Count > maxResults) accounts.RemoveAt(maxResults); } o in questo modo: if (criteria.MaxResults > 0) { while (accounts.Count > criteria.MaxResults) accounts.RemoveAt(criteria.MaxResults); } ? […]

Quali sono i casi in cui è meglio usare AND incondizionato (e invece di &&)

Mi piacerebbe conoscere alcuni casi in Java (o più in generale: in programmazione) quando è preferibile nelle espressioni booleane utilizzare l’ AND incondizionato ( & ) invece della versione condizionale ( && ). So come funzionano, ma non riesco a pensare a un caso quando uso il singolo & vale la pena.

Quali tipi di ottimizzazioni impediscono il “volatile” in C ++?

Stavo cercando la parola chiave volatile e a cosa serve, e la risposta che ho ottenuto è stata più o meno: È usato per impedire al compilatore di ottimizzare il codice di distanza. Ci sono stati alcuni esempi, ad esempio quando si esegue il polling dell’hardware mappato in memoria: senza volatile il ciclo di polling […]

Il metodo più veloce per rimuovere righe e colonne vuote dai file Excel usando Interop

Ho molti file excel che contengono dati e contiene righe vuote e colonne vuote. come mostrato sotto Sto cercando di rimuovere righe e colonne vuote da excel usando l’interoperabilità. Creo una semplice applicazione winform e ho usato il seguente codice e funziona perfettamente. Dim lstFiles As New List(Of String) lstFiles.AddRange(IO.Directory.GetFiles(m_strFolderPath, “*.xls”, IO.SearchOption.AllDirectories)) Dim m_XlApp = […]