La velocità di Swift

it Sappiamo che Swift promette di essere più veloce di Objective-C. Al momento non si eseguono benchmark perché il nuovo linguaggio è ancora in beta ma già immaginiamo il perché di tale miglioramento delle prestazioni.

In questo interessante articolo di Mike Ash (trovato via Dave Verwer) noto due cose interessanti:

  • La superiore velocità di Swift non sarà  data solo dall’uso delle vtable (in Swift le classi hanno già al momento della compilazione un tabella degli indirizzi dei metodi d chiamare) rispetto al dynamic bind (Objective-C aspetta il runtime per decidere e calcolare l’indirizzo dei metodi). Il compilatore potrà applicare ulteriori ottimizzazioni riguardanti, tra l’altro, la allocazione della memoria e un efficiente uso dei registri.
  • Sembra che addirittura Swift sarà in alcuni casi più veloce del C. Questo perché l’uso in C dei puntatori ha come effetto l’aliasing che in alcuni casi impedisce l’ottimizzazione del codice stesso.

Buona lettura.

Follow on Feedly