rete di portali application programming interface di programmazione - Portals network programming application programming interface
| Developer (s) | Sandia National Laboratories , University of New Mexico |
|---|---|
| rilascio stabile | 4.0.2 |
| genere | Network API |
| Sito web | www |
Portals è una rete a basso livello di API per il networking ad alte prestazioni sul calcolo ad alte prestazioni sistemi sviluppati da Sandia National Laboratories e l' Università del New Mexico . Portali è attualmente l'interfaccia di programmazione di rete di livello più basso sulla linea XT successo commerciale dei supercomputer di Cray .
Panoramica
Portali si basa sul concetto di blocchi elementari che possono essere combinati per supportare un'ampia gamma di livello superiore semantica trasporto rete. Portali fornisce unilaterali operazioni di spostamento dei dati, ma a differenza di altre interfacce di programmazione unilaterali, la destinazione di un'operazione remota non è un indirizzo virtuale . Invece, la destinazione finale in memoria di un messaggio in arrivo viene determinato al ricevitore confrontando contenuto dell'intestazione di messaggio con il contenuto delle strutture a destinazione. Questa flessibilità permette implementazioni efficienti di entrambe le comunicazioni unilaterali e fronte-retro. In particolare, portali mira a fornire le operazioni fondamentali necessarie per supportare un alto rendimento e scalabile attuazione del Message Passing Interface standard (MPI). E 'stato utilizzato anche come il livello di trasporto della rete iniziale per il Lustre file system.
Nei primi anni
Portali hanno iniziato nei primi anni 1990 come estensione al nX sistema di message passing utilizzato nel sunmos e Puma sistema operativo. E 'stata implementata prima della Intel Paragon presso i Sandia, e in seguito portato alla teraflop Intel macchina denominata ASCI Red . C'erano quattro blocchi nella prima versione dei portali: singolo blocco, il blocco dinamico, il blocco indipendente e il blocco combinato. Tutti i messaggi in arrivo dovrebbe prima passare attraverso un match-lista che ha permesso i singoli portali per rispondere a specifici gruppi, ranghi, e un insieme di specificate dall'utente match-bit.
portali 3
Il concetto portali continuato ad evolversi nel corso delle generazioni successive di kernel leggeri e molti sistemi paralleli. Nel 1999, un'interfaccia di programmazione operativa è stato dato a portali in modo che possa essere implementato per le interfacce di rete intelligenti programmabili o al di fuori di un ambiente kernel leggero. Questo standard è stato progettato per i sistemi in cui il lavoro necessario per preparare, trasmettere e consegnare messaggi è più lungo del round-trip alle strutture portali di dati. Ad esempio, nei sistemi moderni, questo lavoro è dominato dal di andata e ritorno attraverso il bus IO all'interfaccia di rete. Lo standard è stato rivisto dal rilascio iniziale per renderlo più adatto per la moderna ad alte prestazioni, computer paralleli. La libreria MPI è stato portato dai retronymed Portali 2 ai nuovi Portali 3.0.
La specifica Portali 3 è stato implementato diverse volte, prima su ASCI Red , poi su CPlant sopra Myrinet , Linux e il Cray XT famiglia.
portali 4
Alla luce di emergenti partizionato spazio di indirizzamento globale (PGA) lingue diverse nuove funzionalità sono state aggiunte alle API portali come parte dei portali 4. portali 4 realizzati anche numerose modifiche per migliorare l'interazione tra processore e interfaccia di rete (NIC) per le implementazioni che forniscono offload. Infine, la possibilità di sostenere una forma di controllo del flusso è stato aggiunto ai portali 4.
Portali 4 è l'API di rete di basso livello per la BXi NIC Bull-Atos.