Domanda

Sono interessato a qualsiasi confronto tra GCC e Greenhills C compilatore per quanto riguarda occupazione di memoria del codice generato specificamente su piattaforme ARM.

Ci sono punti di riferimento o confronti per questi compilatori? Qualcuno ha avuto esperienza qui che vorrebbero condividere?

È stato utile?

Soluzione

Non ho visto alcun benchmark ma dalla mia esperienza i due compilatori è molto simile dimensione del codice e il codice generato.

Green Hills ha un sacco di documentazione e supporto, se si vuole ridurre il piede di stampa di memoria, con GCC si ottiene solo molto veloce una volta che il fuori dai sentieri battuti. Green Hills supportano anche immagini eseguibili compressi che è grande se si hanno limitato FLASH ma RAM abbondanza.

Inoltre ho usato runtime costume e librerie C (Questo può risparmiare un po 'di spazio) con entrambi i compilatori, ma è necessario fare un po' di scavo per ottenere informazioni per GCC ma le colline verdi che si può ottenere alcune delle cose attraverso un wizard che genera il file di configurazione.

Altri suggerimenti

Si dovrebbe notare che il Green Hills EULA proibisce esplicitamente ai licenziatari di pubblicazione di parametri di riferimento.

Che cosa si può fare è ottenere una licenza di valutazione da Green Hills ed eseguire la propria analisi comparativa. Questo sarebbe più affidabile e rappresentativa in ogni caso, dal momento che si potrebbe testarlo sul codice di produzione reale. E in ogni caso il punto di riferimento per dire un ARM7 può essere molto diversa da quella di un Cortex-M3, per esempio, in modo che qualsiasi risultati pubblicati a disposizione non può essere il confronto like-for-like, e non può essere rappresentativo della vostra piattaforma.

Guardatevi anche che ho sperimentato molto variabili i risultati di diverse distribuzioni binarie di GCC, anche quando apparentemente dalla versione base stesso codice (in particolare con le prestazioni del software-floating-point. Così si è ancora probabilmente la cosa migliore fuori confidando solo i propri risultati della valutazione .

Si potrebbe considerare Keil e IAR, allo stesso tempo che hanno anche le versioni di valutazione. Perché si stanno prendendo in considerazione solo questi due? Le persone generalmente andare con Green Hills quando hanno grandi budget e possono beneficiare delle funzionalità di integrazione e debugger RTOS disponibili da un'unica fonte; alcun beneficio si potrebbe ottenere dal usando il compilatore da solo è improbabile per giustificare i costi di licenza IMO.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top