Dolphin ICS
PCIe som drivkraft for vekst
Fra SCI til PCI Express: Norske Dolphin ICS fikser lynrask kommunikasjon mellom datamaskiner. Og endelig kom salgsveksten.
Denne artikkelen er 2 år eller eldre
PCI Express – PCIe – en videreføring av PCI (Peripheral Computer Interconnect) har siden introduksjonen i 2003 nå blitt tilnærmet enerådende som internforbindelse i datamaskiner mellom prosessorer og tilkoblet IO (disker, GPUer, FPGAer, Ethenet). De senere år har utbredelsen skutt fart, og nye generasjoner av PCIe standarden er kommet oftere og oftere, med en dobling av båndbredden for hver ny generasjon. PCIe teknologien støtter også sammenkobling av datamaskiner, men dette har hatt en mye mindre utbredelse – inntil nå.
Arven fra Norsk Data
Høyhastighets internkommunikasjon med lav forsinkelse (latens) har vært Dolphins varemerke helt fra starten av, med basis i utviklingsarbeid som ble gjort i fordums Norsk Data. Selskapet utviklet i sin tid bl.a. kontrollerbrikker for SCI-bussen (Scalable Coherent Interface), en IEEE-standard som Dolphin ICS og Universitetet i Oslo var med på å utforme, sammen med flere industripartnere. Senere utviklet selskapet PCI- og PCIe- tilkoplede avleggere av SCI som ivaretar ikke-koherent delt minnetilgang. Og så har det ballet på seg.
Effektiv ressursutnyttelse
– Mens vi tidligere fokuserte på å kople datamaskiner sammen, har vi utvidet med flere I/O-muligheter for å gjøre tilgjengelig data fra andre maskiner, lagringsenheter osv., forteller daglig leder Hugo Kohmann. Med bruk av selskapets teknologi skal applikasjoner bestående av mange maskiner kunne forbedre respons og transaksjonskapasitet. Produktene gjør det mulig for leverandører av datatjenester å dynamisk tilordne resurser til krevende jobber slik at man oppnår en mye bedre utnyttelse av kostbare regne, FPGA og lagringsenheter.
Gjør PCIe anvendelig for brukeren
Ifølge Kohmann er selskapets viktigste produkt programvare for «å gjøre PCIe anvendelig». – Det er komplisert å programmere PCIe svitsjer for å koble sammen datamaskiner og gjøre forbindelsen brukende til en gitt applikasjon. Det vi gjør, er å tilby et kraftig men lett å bruke software grensesnitt, eller API, tilpasset kundebehovet samtidig som det er skalerbart, forklarer han. Den ferdige løsningen kan være implementert på Dolphins egne PCIe produkter (adapter kort, PCIe svitsjer) , eller på kundens maskinvare. – Vi har et godt samarbeid med ledende PCIe halvlederprodusenter som anbefaler sine kunder å gå til oss, fordi det gjør produktfremtakingen enklere og fortere, supplerer programvarearkitekt Roy Nordstrøm.
Solide «byggeklosser»
Det betyr at Dolphin leverer både rene programvareløsninger til kundens maskinvare, og nøkkelferdige systemer, og har etterhvert fått en stor portefølje av «byggeklosser». Den største jobben underveis har kanskje vært å utvikle programvaren eXpressWare, som gjør applikasjoner i stand til å kommunisere over PCIe kabler og bakplan. Flere grensesnitt og APIer støttes, fra standard TCP/IP nettverk til direkte minneaksess på laveste nivå.
SuperSocket er en annen oppfinnelse, som skal gjøre det mulig å implementere eksisterende applikasjoner på PCIe uten modifikasjoner, fortsatt med høy kapasitet og lav latens.
Utnytter distribuerte ressurser
SISCI er et annet høyprofilert produkt og resultat av et samarbeid mellom bl.a. Dolphin og CERN på slutten av 90-tallet. I en flerprosessor-arkitektur med PCI Express, skal SISCI API gjøre PCIe-baserte applikasjoner i stand til å bruke distribuerte ressurser som CPUer, I/O og minne. Løsningen har gjennomgått en stor utvikling siden den gang, med bl.a. utvidelse til 64 bit. – De fleste av våre kunder bruker denne. Ikke minst på grunn av lav latens, understreker Kohmann.
«Låner» enheter i nettverket
Device Lending er en annen morsom funksjon, der enheter som er tilgjengelig i et PCIe-nettverk, det være seg NVMe disker, GPUer, FPGA osv., kan søkes opp og anvendes, og brukes av flere maskiner samtidig, uten ytterligere forsinkelser. Dette betyr også mer effektiv utnyttelse av enhetene i nettverket.
SmartIO
Vi skal ikke gå gjennom alle byggeelementene, men må nevne en løsning som samler mange av dem; SmartIO. Dolphin PCIe SmartIO beskrives som en samling av programvare for PCI Express, som gjør kundene i stand til å anvende standard transparente PCIe-enheter på en ny og fleksibel måte. Løsningen spiller også en viktig rolle i en fremtidig løsning, der man kan dele NVMe-er (familie med spesifikasjoner som definerer hvordan vertsprogramvare kommuniserer med nonvolatile minner over ulike transportsystemer (PCIe, RDAM, TCP osv.)) internt og mellom maskiner.
Rask aksess uten synkronisering
– Dolphin ICS gjør spesielle ting, som delt minne og andre løsninger ingen andre har tenkt på, kommenterer Ph.D.-studenten Jonas Markussen, som er ansatt i selskapet, nettopp med disse tingene. – I utgangspunktet gjør SmartIO det mulig å dele «alt» via PCIe svitsjer. Nå ser vi på hvordan NVMe disker kan deles samtidig mellom flere maskiner samtidig, sier Markussen, som sammen med kolleger fikk antatt en fagartikkel om temaet i ACM Journals i fjor. – Idéen er å oppnå samtidig aksess, uten å behøve å synkronisere på forhånd, og dermed oppnå langt lavere forsinkelse. Og vi har vist at det virker, poengterer han.
Påvirker standardiseringen
Dolphin ICS er medlem i standardiseringsorganisasjonen PCI-SIG (Special Interest Group), og har dermed påvirkningskraft på det som skjer med spesifikasjonene. Selv har de tygget seg igjennom og har allerede sluppet flere produktoppdateringer for PCIe versjon 4.0, og begynner så smått å ta fatt på versjon 5.0, som kom i 2019. Generasjon 5 skal doble hastighet igjen. Og selv om versjon 6.0 blir publisert allerede i år, er det stor interesse også for de foregående utgavene. Mange av de tidlige versjonene er mer enn godt nok for mange applikasjoner.
– Rask og billig
– PCIe maskinvare er relativt billig, protokollen krever lite overhead, den er sikker og har lave svartider. For eksempel har generasjon 4 en latens på 500 ns og en hastighet opp til 28 GigaBytes/s. Men vi har allerede jobbet med latens langt mindre enn dette, understreker Kohmann.
– Produktene brukes i alt fra medisinsk utstyr til regneclustere, serverparker, finans, test (f.eks. PXIe), bilindustri – ja, til og med i jagerfly, forteller Nordstrøm. Et særdeles spennende prosjekt som Dolphin ICS er involvert i, er det såkalte LIGO-programmet i regi av Caltech, som leter etter gravitasjonsbølger fra fjerne galakser. Dolphin produkter blir også brukt til å bygge simulatorer, et eksempel er en Internasjonale Space Station (ISS) trenings-simulator i Huston. En kan trygt si at selskapet er engasjert i mange spesielle kundeprosjekter.
Eget fag ved UiO
Dolphin ICS er fortsatt tett knyttet til Universitetet i Oslo (UiO), og har til og med «sitt eget» fag ved universitetet, Programming heterogeneous multi-core architectures (IN5050). Som en naturlig konsekvens tar de jevnlig inn mastergradsstudenter som jobber her. Samarbeid med Uio og Simula har vært en viktig komponent ikke minst i utviklingsprosjektene som har vært sentrale oppigjennom årene, noen av dem med uvurderlig støtte fra bl.a. Skattefunn og BIA-program, ifølge Kohmann.
Produksjonen øker
Produksjon av kort, som for øvrig utføres av Norautron, har økt til omlag 5.000 kort i året for den største serien, og øker fortsatt. – Per i dag har vi 20.000 kort i bestilling, opplyser Kohmann. Som alle andre har bedriften utfordringer med vanskelig tilgjengelige og utgående komponenter, men har vært i stand til å redesigne noen av kortene.
Unik kompetanse
– Vi er små, men viktige for mange store kunder, sier Kohmann som en forklaring på at omsetningen nå øker. – Dessuten er det snakk om teknologi og løsninger som er vanskelig å få til. Vi har holdt på med dette i 30 år, og har samlet tilsvarende mengde erfaring, for ikke å snakke om en stor programvarebase som vedlikeholdes kontinuerlig, fremholder han. – Det er ikke vi som finner kundene – de finner oss!
Ansetter flere
PCIe er en busstandard som er i stor utvikling teknisk og markedsmessig, og har gitt Dolphin ICS tosifret årlig omsetningsøkning de siste fem årene og et solid overskudd i fjor. Nå fører veksten til at selskapet skal ansette flere, og utvide lokalene. Vår viktigste resurs er ansatte som forstår teknologien og som har opparbeidet seg en betydelig teknisk kompetanse innenfor PCIe og forståelse av kundenes problemer og behov sier Kohmann.