Compilazione di programmi MQL5 con set di istruzioni AVX / AVX2 + FMA3 / AVX512 + FMA3 dalla build 3902 - pagina 6
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Terminale:
Editor:
All'avvio nel registro del terminale:
Nelle impostazioni dell'editor:
E al momento della compilazione nel log:
0 errors, 0 warnings, 14 msec elapsed, cpu='X64 Regular' 1 1
Perché? Processore con AVX2, nelle impostazioni di compilazione è selezionato AVX2+FMA3, ma compila in X64 Regular.... Perché?
Perché non fare in modo che diverse opzioni di compilazione siano racchiuse in un unico file compilato con priorità.... Ci deve essere un futuro per questa variante. Ma per ora è solo un giocattolo.
Non ne avete bisogno. X64 funziona e va bene. Perché devo controllare tutte e quattro le varianti per vedere se funzionano? Ricordo ancora i tempi in cui MQL x32 e x64 davano risultati diversi.
E durante la compilazione nel log:
Perché? Processore con AVX2, nelle impostazioni di compilazione è selezionato AVX2+FMA3, ma compila in X64 Regular... Perché?
Molto probabilmente si sta compilando un progetto e non un singolo file.
I progetti hanno le loro impostazioni personali di modalità di compilazione.
Il chiaro passaggio a versioni specializzate dei terminali per i processori moderni è un passo importante e corretto. Siamo seriamente concentrati sul miglioramento delle prestazioni dell'intera piattaforma e ora siamo liberi di implementare direttamente nuovi metodi di ottimizzazione senza costruire stampelle.
Non è chiaro come mantenere le versioni precedenti dei terminali.
Ad esempio, sulla macchina AVX2-home è stato riscontrato un bug critico nella versione b3521 del terminale. Avevo dei backup delle versioni precedenti sulla mia macchina domestica, in caso di rollback temporaneo fino a quando il bug non fosse stato risolto.
E ora su DDS (AVX2 non lo supporta), dove sono in esecuzione i terminali di combattimento ed è installata la release b3521, ho bisogno di eseguire urgentemente un rollback. I file AVX2-exe dalla macchina di casa non funzionano. Come fare il rollback!
Aggiunta la visualizzazione e la selezione della modalità di compilazione nella barra degli strumenti:
Come si fa a tornare indietro?
Creare un meccanismo che consenta di eseguire automaticamente il backup dei file exe correnti all'avvio di LiveUpdate.
Quando si distribuisce il software, compreso il mercato, è necessario creare la variante x64.
Molto probabilmente state compilando un progetto, non un singolo file.
I progetti hanno le loro impostazioni personali di modalità di compilazione.
No, un singolo file .mqh
UPD. Quando si compilano le classi nel file .mqh, sì, viene usato X64 Regular, ma quando si compila .mq5 a cui è allegato il file con le classi, tutto va bene:
E per gli agenti cloud?
In MQL5 Cloud Network, il limite superiore per EX5 sarà su AVX2 e i compiti saranno distribuiti automaticamente agli agenti con il set di CPU richiesto.
In altre parole, tutto funzionerà in modo trasparente in un paio di giorni. Domani rilasceremo una beta aperta per i broker e tra una settimana avremo il rilascio.
In MQL5 Cloud Network, il limite superiore per EX5 sarà su AVX2 e i compiti saranno distribuiti automaticamente agli agenti con il set di CPU richiesto.
In altre parole, tutto funzionerà in modo trasparente in un paio di giorni. Domani rilasceremo l'open beta per i broker e tra una settimana avremo il rilascio.
Gli agenti senza AVX2 riceveranno meno incarichi? Se compilati su AVX512 - non possono usare il cloud?