Si sta confrontando "dollari-ore" per eseguire un pezzo di codice specifico come una stima delle prestazioni del sistema noleggiato?

1

Contesto: in Microsoft Azure ci sono tipi di macchine virtuali di miliardi di euro ciascuna con prestazioni e prezzi diversi. Tali macchine virtuali vengono pagate all'ora. L'obiettivo è decidere come ottenere "il massimo per i soldi spesi". Questo può essere anche riformulato in termini di elettricità spesa per un certo numero di calcoli.

Quindi ho un pezzo di codice come qui che richiede un uso intensivo della CPU - utilizza poca memoria e nessun disco. Il mio obiettivo è confrontare solo la velocità del processore e presumo che il codice che uso per lo più usi le stesse sequenze di istruzioni della CPU del carico di produzione che ho pianificato, quindi è logico utilizzare questo codice in primo luogo. Seleziono il parametro (il numero del valore da calcolare) per quel codice ed è invariato per le esecuzioni - lascia che sia "cinque milioni" - e quindi tutto gira esattamente allo stesso modo.

Quindi eseguo questo codice più volte su VM di tipo T1 (immaginario, senza tale tipo di VM in Azure ora) e vedo che viene eseguito in media per 5 minuti. Le macchine T1 costano 10 centesimi all'ora.

Quindi eseguo questo codice più volte su VM di tipo T2 e vedo che viene eseguito in media per 7,5 minuti. Le macchine T2 costano 8 centesimi all'ora.

Quindi devo in qualche modo confrontare quale è meglio. La mia logica è la seguente: siamo interessati a ridurre al minimo sia il tempo che il costo. Quindi possiamo moltiplicare il tempo per eseguire il codice in base al costo all'ora che ci dà la misura "soldi per tempo" (centesimi per minuto in questo confronto specifico). Una VM con il valore "money-by-time" più piccolo è la più efficiente. In questo caso, le macchine T1 hanno "5 minuti per 10 centesimi" (50) e la macchina T2 ha "7,5 minuti per 8 centesimi" (60). La macchina T1 è quindi più efficiente del 17%.

Un tale modo di confrontare VM in termini di prestazioni per un determinato prezzo ha senso? C'è forse qualche errore nella mia logica?

    
posta sharptooth 07.02.2018 - 14:30
fonte

1 risposta

1

Amazon misura la potenza di elaborazione delle loro istanze in "Unità di calcolo di Amazon EC2".

È un esperimento interessante da eseguire in quanto puoi verificare se il punteggio pubblicato è accurato.

Presumibilmente ti accorgerai che alcuni arrotondamenti si verificano nel calcolo e forse puoi risparmiare un po 'ottenendo un particolare tipo di istanza.

Tuttavia. Penso che possiamo assumere che in linea generale la misura pubblicata sia corretta. Eseguire un check contro di esso probabilmente non ti darà ulteriori informazioni

Dai un'occhiata a questo link link

    
risposta data 07.02.2018 - 19:16
fonte