“Mae'n haws ateb nag aros yn dawel” - cyfweliad gwych gyda thad cof trafodaethol, Maurice Herlihy

Maurice Herlihy - perchennog dau Gwobrau Dijkstra. Mae'r un cyntaf ar gyfer gwaith ar "Cydamseru Heb Aros" (Prifysgol Brown) a'r ail, mwy diweddar, - "Cof Trafodol: Cefnogaeth Bensaernïol ar gyfer Strwythurau Data Di-glo" (Prifysgol Dechnoleg Virginia). Rhoddir Gwobr Dijkstra am waith y mae ei arwyddocâd a'i ddylanwad wedi bod yn weladwy ers o leiaf ddeng mlynedd ac mae Maurice yn amlwg yn un o arbenigwyr enwocaf y maes. Ar hyn o bryd mae'n gweithio fel athro ym Mhrifysgol Brown ac mae ganddo gyflawniadau niferus sy'n para paragraff. Ar hyn o bryd mae'n ymchwilio i blockchain yng nghyd-destun cyfrifiadura dosbarthedig clasurol.

Yn flaenorol, roedd Maurice eisoes wedi dod i Rwsia ar gyfer SPTCC (tâp fideo) a gwnaeth gyfarfod ardderchog o gymuned datblygwyr Java JUG.ru yn St.tâp fideo).

Mae'r habrapost hwn yn gyfweliad gwych gyda Maurice Herlihy. Mae’n trafod y pynciau canlynol:

  • Rhyngweithio rhwng y byd academaidd a diwydiant;
  • Sefydliad Ymchwil Blockchain;
  • O ble mae syniadau arloesol yn dod? Dylanwad poblogrwydd;
  • PhD o dan oruchwyliaeth Barbara Liskov;
  • Mae'r byd yn aros am aml-graidd;
  • Mae byd newydd yn dod â phroblemau newydd. NVM, NUMA a hacio pensaernïaeth;
  • Casglwyr vs proseswyr, RISC yn erbyn CISC, cof a rennir yn erbyn trosglwyddo neges;
  • Y grefft o ysgrifennu cod aml-edau bregus;
  • Sut i addysgu myfyrwyr i ysgrifennu cod aml-edau cymhleth;
  • Argraffiad newydd o'r llyfr “The Art of Multiprocessor Programming”;
  • Sut y dyfeisiwyd cof trafodaethol;   
  • Pam ei bod yn werth cynnal ymchwil ym maes cyfrifiadura gwasgaredig;
  • A yw datblygiad algorithmau wedi dod i ben, a sut i symud ymlaen;
  • Gwaith ym Mhrifysgol Brown;
  • Y gwahaniaeth rhwng ymchwil mewn prifysgol ac o fewn corfforaeth;
  • Hydra a SPTDC.

Cynhelir y cyfweliad gan:

Vitaly Aksenov — ar hyn o bryd, ôl-ddoethuriaeth yn IST Awstria a gweithiwr yn yr Adran Technolegau Cyfrifiadurol ym Mhrifysgol ITMO. Yn cynnal ymchwil ym maes theori ac ymarfer strwythurau data cystadleuol. Cyn gweithio yn IST, derbyniodd ei PhD o Brifysgol Diderot Paris a Phrifysgol ITMO dan oruchwyliaeth yr Athro Peter Kuznetsov.

Alexei Fedorov - Cynhyrchydd yn JUG Ru Group, cwmni o Rwsia sy'n trefnu cynadleddau ar gyfer datblygwyr. Cymerodd Alexey ran yn y gwaith o baratoi mwy na 50 o gynadleddau, ac mae ei ailddechrau'n cynnwys popeth o swydd peiriannydd datblygu yn Oracle (JCK, Java Platform Group) i swydd datblygwr yn Odnoklassniki.

Vladimir Sitnikov - Peiriannydd yn Netcracker. Deng mlynedd o waith ar berfformiad a scalability NetCracker OS, meddalwedd a ddefnyddir gan weithredwyr telathrebu i awtomeiddio prosesau rheoli offer rhwydwaith a rhwydwaith. Diddordeb mewn materion perfformiad Java a Chronfa Ddata Oracle. Awdur mwy na dwsin o welliannau perfformiad yn yrrwr swyddogol PostgreSQL JDBC.

Rhyngweithio rhwng y byd academaidd a diwydiant

Alexey: Maurice, rydych chi wedi gweithio mewn amgylchedd academaidd ers amser maith a'r cwestiwn cyntaf yw'r rhyngweithio rhwng y meysydd academaidd a diwydiannol. A allech chi siarad am sut mae rhyngweithio rhyngddynt wedi newid yn ddiweddar? Beth ddigwyddodd 20-30 mlynedd yn ôl a beth sy'n digwydd nawr? 

Maurice: Rwyf bob amser wedi ceisio gweithio’n agos gyda chwmnïau masnachol oherwydd bod ganddynt broblemau diddorol. Nid oes ganddynt, fel rheol, ddiddordeb mawr mewn cyhoeddi eu canlyniadau nac mewn esboniadau manwl o'u problemau i gymuned y byd. Dim ond mewn datrys y problemau hyn y mae ganddynt ddiddordeb. Bûm yn gweithio i gwmnïau o'r fath am beth amser. Treuliais bum mlynedd yn gweithio'n llawn amser mewn labordy ymchwil yn Digital Equipment Corporation, a oedd yn arfer bod yn gwmni cyfrifiaduron mawr. Roeddwn i'n gweithio un diwrnod yr wythnos yn Sun, yn Microsoft, yn Oracle, ac yn gwneud ychydig o waith yn Facebook. Nawr rydw i'n mynd i fynd ar gyfnod sabothol (mae athro mewn prifysgol yn America yn cael cymryd gwyliau o'r fath am flwyddyn tua unwaith bob chwe blynedd) a gweithio yn Algorand, mae hwn yn gwmni cryptocurrency yn Boston. Mae gweithio'n agos gyda chwmnïau bob amser wedi bod yn bleser oherwydd dyna sut rydych chi'n dysgu am bethau newydd a diddorol. Efallai mai chi yw'r person cyntaf neu'r ail berson hyd yn oed i gyhoeddi erthygl ar bwnc o'ch dewis, yn hytrach na gweithio ar wella'n gynyddol atebion i broblemau y mae pawb arall eisoes yn gweithio arnynt.

Alexey: A allwch chi ddweud wrthym yn fanylach sut mae hyn yn digwydd?

Maurice: Wrth gwrs. Wyddoch chi, pan oeddwn i'n gweithio yn y Digital Equipment Corporation, fi ac Elliot Moss, fe wnaethon ni ddyfeisio cof trafodaethol. Bu’n gyfnod ffrwythlon iawn pan ddechreuodd pawb ymddiddori mewn technoleg gwybodaeth. Cyfochrog, gan gynnwys, er nad oedd systemau aml-graidd yn bodoli eto. Yn ystod y dyddiau Haul ac Oracle, bûm yn gweithio llawer ar strwythurau data cyfochrog. Yn Facebook bûm yn gweithio ar eu prosiect blockchain, na allaf siarad amdano, ond rwy'n gobeithio y bydd yn mynd yn gyhoeddus yn fuan. Y flwyddyn nesaf, yn Algorand, byddaf yn gweithio mewn grŵp ymchwil yn astudio contractau smart.

Alexey: Mae Blockchain wedi dod yn bwnc poblogaidd iawn yn ystod yr ychydig flynyddoedd diwethaf. A fydd hyn yn helpu eich ymchwil? Efallai y bydd yn ei gwneud yn haws cael grantiau neu ddarparu mynediad at adnoddau gan gwmnïau sy’n gweithredu yn y diwydiant?

Maurice: Cefais grant bach eisoes gan Sefydliad Ethereum. Mae poblogrwydd blockchain yn ddefnyddiol iawn wrth ysbrydoli myfyrwyr i weithio yn y maes hwn. Mae ganddyn nhw ddiddordeb mawr ynddo ac maen nhw'n gyffrous i gymryd rhan, ond weithiau dydyn nhw ddim yn sylweddoli bod yr ymchwil sy'n swnio'n gyffrous ar y tu allan yn troi allan i gynnwys gwaith caled iawn. Fodd bynnag, rwy'n gyffrous iawn i ddefnyddio'r holl ddirgelwch hwn o amgylch blockchain i helpu i ddenu myfyrwyr. 

Ond nid dyna'r cyfan. Rwyf ar fwrdd cynghori sawl cwmni newydd blockchain. Efallai y bydd rhai ohonynt yn llwyddo, efallai na fydd rhai ohonynt, ond mae bob amser yn ddiddorol iawn gweld eu syniadau, eu hastudio a chynghori pobl. Y peth mwyaf cyffrous yw pan fyddwch chi'n rhybuddio pobl i beidio â gwneud rhywbeth. Mae llawer o bethau'n ymddangos yn syniad da ar y dechrau, ond ydyn nhw mewn gwirionedd?

Sylfaen ar gyfer Ymchwil Blockchain

Vitaly: Mae rhai pobl yn meddwl bod y dyfodol yn gorwedd gyda'r blockchain a'i algorithmau. Ac mae pobl eraill yn dweud mai dim ond swigen arall ydyw. A allwch chi rannu eich barn ar y mater hwn?

Maurice: Mae llawer o'r hyn sy'n digwydd yn y byd blockchain yn anghywir, dim ond sgam yw rhai ohonynt, mae llawer wedi'i orbrisio. Fodd bynnag, credaf fod sail wyddonol gadarn i'r astudiaethau hyn. Mae'r ffaith bod y byd blockchain yn llawn gwahaniaethau ideolegol yn dangos lefel y cyffro ac ymroddiad. Ar y llaw arall, nid yw hyn yn arbennig o fuddiol ar gyfer ymchwil wyddonol. Nawr, os ydych chi'n cyhoeddi erthygl sy'n sôn am ddiffygion algorithm penodol, nid yw'r adwaith canlyniadol bob amser yn gwbl wyddonol. Yn aml mae pobl yn taflu eu hemosiynau allan. Credaf y gallai’r math hwn o gyffro yn y maes hwn ymddangos yn ddeniadol i rai, ond yn y pen draw, mae materion gwyddonol a pheirianyddol gwirioneddol y mae angen mynd i’r afael â hwy. Mae llawer o Gyfrifiadureg yma.

Vitaly: Felly rydych chi'n ceisio gosod y sylfaen ar gyfer ymchwil blockchain, iawn?

Maurice: Yr wyf yn ceisio gosod y sylfaen ar gyfer disgyblaeth gadarn, wyddonol a mathemategol gadarn. A rhan o'r broblem yw bod yn rhaid i chi weithiau wrth-ddweud rhai o safbwyntiau rhy llym pobl eraill a'u hanwybyddu. Weithiau mae pobl yn gofyn pam fy mod yn gweithio mewn maes lle mai dim ond terfysgwyr a masnachwyr cyffuriau sydd â diddordeb. Mae adwaith o'r fath yr un mor ddiystyr ag ymddygiad dilynwyr sy'n ailadrodd eich geiriau yn ddall. Rwy'n meddwl bod y gwir rhywle yn y canol. Bydd Blockchain yn cael effaith ddwys ar gymdeithas a'r economi fyd-eang. Ond mae'n debyg na fydd hyn yn digwydd diolch i dechnoleg fodern. Bydd technolegau modern yn datblygu a bydd yr hyn a elwir yn blockchain yn y dyfodol yn dod yn bwysig iawn. Efallai nad yw hyd yn oed yn edrych fel cadwyni modern, mae hwnnw'n gwestiwn agored.

Os yw pobl yn dyfeisio technolegau newydd, byddant yn parhau i'w galw'n blockchain. Hynny yw, yn union fel Fortran heddiw, does dim byd i'w wneud ag iaith Fortran o'r 1960au, ond mae pawb yn ei alw'n Fortran o hyd. Yr un peth ar gyfer UNIX. Bydd yr hyn a elwir yn “blockchain” yn dal i wneud ei chwyldro. Ond rwy'n amau ​​​​y bydd y blockchain newydd hwn yn unrhyw beth tebyg i'r hyn y mae pawb yn mwynhau ei ddefnyddio heddiw.

O ble mae syniadau arloesol yn dod? Effaith poblogrwydd

Alexey: A yw poblogrwydd blockchain wedi arwain at ganlyniadau newydd o safbwynt gwyddonol? Mwy o ryngweithio, mwy o fyfyrwyr, mwy o gwmnïau yn yr ardal. A oes unrhyw ganlyniadau eisoes o'r cynnydd hwn mewn poblogrwydd?

Maurice: Dechreuais ymddiddori yn hyn pan roddodd rhywun daflen swyddogol i mi ar gyfer cwmni a oedd newydd godi cryn dipyn o arian. Ysgrifennodd am gorchwyl y cadfridogion Bysantaidd, yr wyf yn fwy na chyfarwydd ag ef. Roedd yr hyn a ysgrifennwyd yn y daflen yn amlwg yn dechnegol anghywir. Nid oedd y bobl a ysgrifennodd hyn i gyd wir yn deall y model y tu ôl i'r broblem ... ac eto cododd y cwmni hwn lawer o arian. Yn dilyn hynny, disodlodd y cwmni'r daflen hon yn dawel gyda fersiwn llawer mwy cywir - ac ni ddywedaf beth oedd enw'r cwmni hwn. Maen nhw'n dal o gwmpas ac yn gwneud yn dda iawn. Fe wnaeth y digwyddiad hwn fy narbwyllo, yn gyntaf, mai dim ond ffurf o gyfrifiadura gwasgaredig yw blockchain. Yn ail, roedd y trothwy mynediad (o leiaf bryd hynny, bedair blynedd yn ôl) yn eithaf isel. Roedd y bobl sy'n gweithio yn y maes hwn yn egnïol a deallus iawn, ond nid oeddent yn darllen papurau gwyddonol. Fe wnaethon nhw geisio ailddyfeisio pethau hysbys a gwneud pethau'n anghywir. Heddiw mae'r ddrama wedi lleihau.

Alexey: Mae hyn yn ddiddorol iawn, oherwydd ychydig flynyddoedd yn ôl roedd gennym duedd wahanol. Mae ychydig yn debyg i ddatblygiad pen blaen, pan wnaeth datblygwyr pen blaen sy'n seiliedig ar borwyr ailddyfeisio technolegau cyfan a oedd eisoes yn boblogaidd yn y pen ôl: adeiladu systemau, integreiddio parhaus, pethau felly. 

Maurice: Yr wyf yn cytuno. Ond nid yw hyn yn syndod, oherwydd mae syniadau gwirioneddol arloesol bob amser yn dod o'r tu allan i'r gymuned sefydledig. Mae ymchwilwyr sefydledig, yn enwedig academyddion sefydledig, yn annhebygol o wneud unrhyw beth gwirioneddol arloesol. Mae'n hawdd ysgrifennu papur ar gyfer y gynhadledd nesaf am sut y gwnaethoch wella ychydig ar ganlyniadau eich gwaith yn y gorffennol. Ewch i gynhadledd, dewch ynghyd â ffrindiau, siaradwch am yr un pethau. Ac mae'r bobl sy'n llawn syniadau arloesol bron bob amser yn dod o'r tu allan. Nid ydynt yn gwybod y rheolau, nid ydynt yn gwybod yr iaith, ond serch hynny... Os ydych o fewn cymuned sefydledig, rwy'n eich cynghori i dalu sylw i bethau newydd, i rywbeth nad yw'n ffitio i mewn i'r darlun cyffredinol. Mewn ffordd, gellir ceisio cyfuno datblygiadau allanol, mwy hylifol â dulliau yr ydym eisoes yn eu deall. Fel cam cyntaf, ceisiwch sefydlu sail wyddonol, ac yna ei newid fel y gellir ei gymhwyso i syniadau arloesol newydd. Rwy'n meddwl bod blockchain yn wych ar gyfer bod yn syniad ffres, aflonyddgar.

Alexey: Pam ydych chi'n meddwl bod hyn yn digwydd? Oherwydd nad oes gan bobl “y tu allan” unrhyw rwystrau penodol sy'n gynhenid ​​i'r gymuned?

Maurice: Mae yna batrwm yn digwydd yma. Os darllenwch hanes yr argraffiadwyr mewn peintio a chelf yn gyffredinol, yna ar un adeg gwrthododd artistiaid enwog argraffiadaeth. Roeddent yn dweud ei fod yn fath o blentynnaidd. Genhedlaeth yn ddiweddarach, daeth y ffurf gelfyddydol hon a wrthodwyd yn flaenorol yn safon. Yr hyn a welaf yn fy maes: nid oedd gan ddyfeiswyr blockchain ddiddordeb mewn pŵer, mewn cynyddu cyhoeddiadau a mynegai dyfyniadau, roeddent am wneud rhywbeth da yn unig. Ac felly dyma nhw'n eistedd i lawr a dechrau ei wneud. Nid oedd ganddynt rywfaint o ddyfnder technegol, ond mae modd trwsio hynny. Mae'n llawer anoddach meddwl am syniadau creadigol newydd na chywiro a chryfhau rhai digon aeddfed. Diolch i'r dyfeiswyr hyn, mae gen i rywbeth i'w wneud nawr!

Alexey: Mae hyn yn debyg i'r gwahaniaeth rhwng busnesau newydd a phrosiectau etifeddol. Rydym yn etifeddu llawer o gyfyngiadau meddwl, rhwystrau, gofynion arbennig, ac ati.

Maurice: Cyfatebiaeth dda yw cyfrifiadura dosranedig. Meddyliwch am blockchain fel pe bai'n gychwyn a chyfrifiadura gwasgaredig fel cwmni mawr, sefydledig. Mae cyfrifiaduron gwasgaredig yn y broses o gael eu caffael a'u huno â blockchain.

PhD o dan oruchwyliaeth Barbara Liskov

Vitaly: Mae gennym lawer o gwestiynau o hyd! Roeddem yn edrych i mewn i'ch cefndir a daethom ar draws ffaith ddiddorol am eich doethuriaeth. Oedd, roedd hyn amser maith yn ôl, ond mae'n ymddangos yn bwnc pwysig. Cawsoch eich PhD o dan eich arweiniad eich hun Barbara Liskov! Mae Barbara yn adnabyddus iawn yn y gymuned iaith raglennu, ac yn berson adnabyddus iawn yn gyffredinol. Mae'n rhesymegol bod eich ymchwil ym maes ieithoedd rhaglennu. Sut wnaethoch chi newid i gyfrifiadura cyfochrog? Pam wnaethoch chi benderfynu newid y pwnc?

Maurice: Ar y pryd, roedd Barbara a’i grŵp yn edrych ar gyfrifiadura gwasgaredig, a oedd yn syniad newydd iawn. Roedd yna rai hefyd a ddywedodd fod cyfrifiadura dosranedig yn nonsens a bod cyfrifiaduron yn cyfathrebu â'i gilydd yn ddibwrpas. Un o'r materion yr eir i'r afael ag ef mewn cyfrifiadura dosranedig sy'n ei wahaniaethu oddi wrth gyfrifiadura canolog yw goddefiad o ddiffygion. Ar ôl llawer o ymchwil, penderfynasom fod angen i iaith raglennu gyfrifiadurol ddosbarthedig gael rhywbeth fel trafodion atomig oherwydd ni allwch byth fod yn siŵr y bydd galwad o bell yn llwyddo. Unwaith y bydd gennych drafodion, mae'r broblem o reoli arian cyfred yn codi. Yna bu llawer o waith i gael strwythurau data trafodion cyfochrog iawn. Yna, ar ôl graddio, es i Carnegie Mellon a dechrau chwilio am bwnc i weithio arno. Daeth yn amlwg i mi fod cyfrifiadura wedi symud o gyfrifiaduron unigol i rwydweithiau o gyfrifiaduron. Byddai amlbroseswyr yn barhad naturiol o gynnydd - nid oedd y gair “aml-graidd” yn bodoli eto. Roeddwn i'n meddwl: beth sy'n cyfateb i drafodion atomig ar gyfer system aml-graidd? Yn bendant nid trafodion rheolaidd oherwydd eu bod yn rhy fawr ac yn drwm. A dyna sut y deuthum i fyny gyda'r syniad llinoledd a dyna sut y deuthum i fyny gyda'r cyfan aros-rhydd synchronization. Roedd hwn yn ymgais i ateb y cwestiwn beth yw analog trafodion atomig ar gyfer system amlbrosesydd gyda chof a rennir. Ar yr olwg gyntaf, efallai y bydd y gwaith hwn yn edrych yn hollol wahanol, ond mewn gwirionedd mae'n barhad o'r un thema.

Mae'r byd yn aros am aml-graidd

Vitaly: Soniasoch mai ychydig iawn o gyfrifiaduron aml-graidd oedd ar y pryd, iawn?

Maurice: Doedden nhw ddim yno. Roedd yna nifer o amlbroseswyr cymesur, fel y'u gelwir, a oedd wedi'u cysylltu yn y bôn â'r un bws. Ni weithiodd hyn yn dda iawn oherwydd bob tro y byddai cwmni newydd yn creu rhywbeth tebyg, byddai Intel yn rhyddhau un prosesydd a oedd yn well na'r amlbrosesydd.

Alexey: Onid yw hyn yn golygu ei fod yn fwy o astudiaeth ddamcaniaethol yn yr hen amser?

Maurice: Nid astudiaeth ddamcaniaethol ydoedd, ond yn hytrach astudiaeth hapfasnachol. Nid oedd hyn i gyd yn ymwneud â gweithio gyda llawer o ddamcaniaethau; yn hytrach, rydym yn cyflwyno damcaniaethau am bensaernïaeth nad oedd yn bodoli bryd hynny. Dyma bwrpas ymchwil! Ni fyddai unrhyw gwmni wedi gwneud rhywbeth fel hyn; roedd y cyfan yn rhywbeth o'r dyfodol pell. Mewn gwirionedd, roedd hyn yn wir tan 2004, pan ymddangosodd proseswyr aml-graidd go iawn. Oherwydd bod proseswyr yn gorboethi, gallwch chi wneud y prosesydd hyd yn oed yn llai, ond ni allwch ei wneud yn gyflymach. Oherwydd hyn, bu newid i bensaernïaeth aml-graidd. Ac yna roedd hynny'n golygu yn sydyn fod yna ddefnydd i'r holl gysyniadau yr oeddem wedi'u datblygu yn y gorffennol.

Alexey: Pam ydych chi'n meddwl mai dim ond yn y XNUMXau yr ymddangosodd proseswyr aml-graidd? Felly pam ei bod hi mor hwyr?

Maurice: Mae hyn oherwydd cyfyngiadau caledwedd. Mae Intel, AMD a chwmnïau eraill yn dda iawn am gynyddu cyflymder prosesydd. Pan ddaeth y proseswyr yn ddigon bach ar ryw adeg na allent gynyddu cyflymder y cloc mwyach oherwydd byddai'r proseswyr yn dechrau llosgi allan. Gallwch eu gwneud yn llai, ond nid yn gyflymach. Beth sydd yn eu gallu - yn lle prosesydd bach iawn, gallant ffitio wyth, un ar bymtheg neu dri deg dau o broseswyr i'r un cyfaint o'r achos, lle o'r blaen dim ond un allai ffitio. Nawr mae gennych chi aml-threading a chyfathrebu cyflym rhyngddynt oherwydd eu bod yn rhannu caches. Ond ni allwch eu gorfodi i redeg yn gyflymach - mae terfyn cyflymder penodol iawn. Maent yn parhau i wella fesul tipyn, ond nid cymaint â hynny mwyach. Safai deddfau ffiseg yn ffordd gwelliantau.

Mae byd newydd yn dod â phroblemau newydd. NUMA, NVM a hacio pensaernïaeth

Alexey: Swnio'n rhesymol iawn. Gyda phroseswyr aml-graidd newydd daeth problemau newydd. Oeddech chi a'ch cydweithwyr yn disgwyl y problemau hyn? Efallai ichi eu hastudio ymlaen llaw? Mewn astudiaethau damcaniaethol yn aml nid yw'n hawdd iawn rhagweld pethau o'r fath. Pan gododd problemau, sut gwnaethant gwrdd â'ch disgwyliadau chi a'ch cydweithwyr? Neu a oeddent yn gwbl newydd, a bu'n rhaid i chi a'ch cydweithwyr dreulio llawer o amser yn datrys problemau wrth iddynt ymddangos?

Vitaly: Ychwanegaf at gwestiwn Alexey: a wnaethoch chi ragfynegi pensaernïaeth y prosesydd yn gywir tra oeddech chi'n astudio'r theori?

Maurice: Ddim yn 100%. Ond rwy'n credu bod fy nghydweithwyr a minnau wedi gwneud gwaith da yn rhagweld aml-greiddiau gyda chof a rennir. Rwy'n meddwl ein bod wedi rhagweld yn gywir yr anawsterau wrth ddatblygu strwythurau data cyfochrog sy'n gweithredu heb gloeon. Mae strwythurau data o'r fath wedi bod yn bwysig i lawer o gymwysiadau, er nid pob un, ond yn aml yr hyn sydd ei angen arnoch chi mewn gwirionedd yw strwythur data nad yw'n cloi. Pan wnaethon ni eu dyfeisio, roedd llawer yn dadlau mai nonsens oedd hyn, bod popeth yn gweithio'n iawn gyda chloeon. Roeddem wedi rhagweld yn eithaf da y byddai atebion parod ar gyfer llawer o broblemau rhaglennu a phroblemau strwythur data. Roedd problemau mwy cymhleth hefyd, megis YN - mynediad anwastad i'r cof. Mewn gwirionedd, ni chawsant eu hystyried hyd yn oed nes i broseswyr aml-graidd ddyfeisio oherwydd eu bod yn rhy benodol. Roedd y gymuned ymchwil yn gweithio ar gwestiynau a oedd yn rhagweladwy ar y cyfan. Roedd yn rhaid i rai problemau caledwedd sy'n gysylltiedig â phensaernïaeth benodol aros yn yr adenydd - mewn gwirionedd, ymddangosiad y pensaernïaeth hyn. Er enghraifft, nid oedd neb wir yn gweithio ar strwythurau data GPU-benodol oherwydd nad oedd GPUs yn bodoli bryd hynny. Er bod llawer o waith wedi'i wneud ar SIMD, roedd yr algorithmau hyn yn barod i'w defnyddio cyn gynted ag y daeth caledwedd addas ar gael. Fodd bynnag, mae'n amhosibl rhagweld popeth.

Alexey: Os deallaf yn iawn, mae NUMA yn fath o gyfaddawd rhwng cost, perfformiad a rhai pethau eraill. Unrhyw syniadau pam y daeth NUMA allan mor hwyr?

Maurice: Credaf fod NUMA yn bodoli oherwydd problemau gyda’r caledwedd a ddefnyddir i gynhyrchu cof: po bellaf i ffwrdd yw’r cydrannau, yr arafaf yw hi i gael mynediad atynt. Ar y llaw arall, ail werth y tynnu hwn yw unffurfiaeth cof. Felly un o nodweddion cyfrifiadura cyfochrog yw bod yr holl dyniadau wedi'u torri ychydig. Pe bai mynediad yn berffaith unffurf, byddai'r holl gof yn gyfartal, ond mae hyn yn economaidd, ac efallai hyd yn oed yn gorfforol, yn amhosibl. Felly mae'r gwrthdaro hwn yn codi. Os ysgrifennwch eich rhaglen fel pe bai'r cof yn unffurf, yna mae'n debygol y bydd yn gywir. Yn yr ystyr na fydd yn rhoi atebion anghywir. Ond ni fydd ei pherfformiad yn dal y sêr o'r awyr chwaith. Yn yr un modd, os byddwch yn ysgrifennu sbinlocks Heb ddeall yr hierarchaeth storfa, bydd y blocio ei hun yn gywir, ond gallwch chi anghofio am berfformiad. Ar un ystyr, mae'n rhaid i chi ysgrifennu rhaglenni sy'n byw ar ben haniaeth syml iawn, ond mae'n rhaid i chi drechu'r bobl a roddodd y tynnu hwnnw ichi: mae'n rhaid ichi wybod bod rhywfaint o hierarchaeth cof o dan y haniaethu, bod yna ryw hierarchaeth cof. bws rhyngoch chi a'r atgof hwn, ac ati. Felly, mae rhywfaint o wrthdaro rhwng tyniadau unigol defnyddiol, sy'n ein harwain at broblemau concrid a phragmatig iawn.

Vitaly: Beth am y dyfodol? Allwch chi ragweld sut y bydd proseswyr yn datblygu nesaf? Mae yna syniad mai cof trafodaethol yw un o'r atebion. Mae'n debyg bod gennych chi rywbeth arall mewn stoc.

Maurice: Mae cwpl o heriau mawr o’n blaenau. Un yw bod cof cydlynol yn haniaeth wych, ond mae'n dechrau chwalu mewn achosion arbennig. Felly, er enghraifft, mae NUMA yn enghraifft fyw o rywbeth lle gallwch chi barhau i esgus bod cof unffurf yn bodoli. A dweud y gwir na, bydd cynhyrchiant yn gwneud ichi grio. Ar ryw adeg, bydd yn rhaid i benseiri gefnu ar y syniad o bensaernïaeth cof sengl; ni ​​allwch esgus am byth. Bydd angen modelau rhaglennu newydd sy'n ddigon hawdd i'w defnyddio ac yn ddigon pwerus i wneud y caledwedd sylfaenol yn effeithlon. Mae hwn yn gyfaddawd anodd iawn, oherwydd os ydych chi'n dangos i raglenwyr y bensaernïaeth a ddefnyddir mewn gwirionedd yn y caledwedd, byddant yn mynd yn wallgof. Mae'n rhy gymhleth ac nid yw'n gludadwy. Os cyflwynwch ryngwyneb sy'n rhy syml, bydd y perfformiad yn wael. Felly, bydd angen gwneud llawer o gyfaddawdau anodd iawn i ddarparu modelau rhaglennu defnyddiol sy'n berthnasol i broseswyr aml-graidd gwirioneddol fawr. Dydw i ddim yn siŵr bod unrhyw un heblaw arbenigwr yn gallu rhaglennu ar gyfrifiadur 2000-craidd. Ac oni bai eich bod chi'n gwneud cyfrifiadura neu cryptograffeg arbenigol neu wyddonol iawn neu rywbeth felly - nid yw'n glir o gwbl sut i'w wneud yn gywir. 

Maes tebyg arall yw pensaernïaeth arbenigol. Mae cyflymwyr graffeg wedi bod o gwmpas ers amser maith, ond maen nhw wedi dod yn enghraifft glasurol o sut y gallwch chi gymryd math arbenigol o gyfrifiadura a'i redeg ar sglodyn pwrpasol. Mae hyn yn ychwanegu ei heriau ei hun: sut rydych chi'n cyfathrebu â dyfais o'r fath, sut rydych chi'n ei raglennu. Dw i wedi bod yn gweithio ar broblemau yn yr ardal yn ddiweddar cyfrifiadura cof agos. Rydych chi'n cymryd prosesydd bach ac yn ei gludo i dalp enfawr o gof fel bod y cof yn rhedeg ar gyflymder storfa L1 ac yna'n cyfathrebu â dyfais fel TPU – mae'r prosesydd yn brysur yn llwytho tasgau newydd i graidd eich cof. Mae dylunio strwythurau data a phrotocolau cyfathrebu ar gyfer y math hwn o beth yn enghraifft ddiddorol arall. Felly bydd proseswyr a chaledwedd arfer yn parhau i weld gwelliannau am gryn amser.

Alexey: Beth am gof anweddol (cof anweddol)?

Maurice: O, dyna enghraifft wych arall! Bydd NVM yn newid yn fawr y ffordd yr ydym yn edrych ar bethau fel strwythurau data. Mae cof anweddol, mewn ffordd, yn addo cyflymu pethau. Ond ni fydd yn gwneud bywyd yn haws oherwydd bod y rhan fwyaf o broseswyr, caches a chofrestrau yn dal i fod yn gyfnewidiol. Pan ddechreuwch ar ôl damwain, ni fydd eich cyflwr a chyflwr eich cof yn union yr un fath â chyn y ddamwain. Rwy'n ddiolchgar iawn i'r bobl sy'n gweithio ar NVM - bydd digon i ymchwilwyr ei wneud am amser hir yn ceisio darganfod amodau cywirdeb. Mae cyfrifiannau'n gywir os gallant oroesi damwain lle mae cynnwys caches a chofrestrau'n cael eu colli, ond mae'r prif gof yn parhau'n gyfan.

Casglwyr yn erbyn proseswyr, RISC yn erbyn CISC, cof a rennir yn erbyn trosglwyddo neges

Vladimir: Beth ydych chi'n ei feddwl am y cyfyng-gyngor “compilers vs. processors” o safbwynt set o gyfarwyddiadau? Gadewch imi egluro i'r rhai nad ydyn nhw'n gwybod: os ydyn ni'n mynd i gof gogwydd neu rywbeth tebyg, gallem ddefnyddio set syml iawn o orchmynion a gofyn i'r casglwr gynhyrchu cod cymhleth a all fanteisio ar y manteision newydd. Neu gallwn fynd y ffordd arall: gweithredu cyfarwyddiadau cymhleth a gofyn i'r prosesydd aildrefnu'r cyfarwyddiadau a gwneud manipulations eraill gyda nhw. Beth ydych chi'n ei feddwl amdano?

Maurice: Nid oes gennyf ateb i’r cwestiwn hwnnw mewn gwirionedd. Mae’r ddadl hon wedi bod yn mynd rhagddi ers pedwar degawd. Bu amser pan rhwng talfyredig set o orchmynion a anodd ymladdwyd rhyfeloedd cartref gan set o orchmynion. Am gyfnod, enillodd y bobl RISC, ond yna ailadeiladodd Intel eu peiriannau fel bod set lai o gyfarwyddiadau'n cael ei ddefnyddio'n fewnol, ac roedd y set lawn yn cael ei allforio yn allanol. Mae'n debyg bod hwn yn bwnc lle mae'n rhaid i bob cenhedlaeth newydd ddod o hyd i'w chyfaddawdau ei hun a gwneud ei phenderfyniadau ei hun. Mae'n anodd iawn rhagweld pa rai o'r pethau hyn fydd yn well. Felly bydd unrhyw ragfynegiad a wnaf yn wir am amser penodol, ac yna'n ffug eto am ychydig, ac yna'n wir eto.

Alexey: Pa mor gyffredin yw hi i'r diwydiant bod rhai syniadau'n ennill am sawl degawd ac yn colli yn y nesaf? A oes enghreifftiau eraill o newidiadau cyfnodol o'r fath?

Maurice: Ar bwnc cyfrifiadura dosranedig, mae yna bobl sy'n credu mewn cof a rennir a phobl sy'n credu mewn negeseua. I ddechrau, mewn cyfrifiadura dosranedig, mae cyfrifiadura cyfochrog yn golygu pasio neges. Yna darganfu rhywun ei bod yn llawer haws rhaglennu gyda chof a rennir. Dywedodd yr ochr arall fod cof a rennir yn rhy gymhleth, oherwydd bod angen cloeon ac ati, felly mae'n werth symud i ieithoedd lle nad oes dim ond trosglwyddo negeseuon yn bodoli. Edrychodd rhywun ar yr hyn a ddaeth allan o hyn a dweud, “wow, mae'r gweithrediad negeseuon hwn yn edrych yn debyg iawn i gof a rennir, oherwydd rydych chi'n creu llawer a llawer o'r modiwlau bach hyn, maen nhw'n anfon negeseuon at ei gilydd, ac maen nhw i gyd cydgloi“Gadewch i ni wneud gwell cronfa ddata cof a rennir!” Mae hyn i gyd yn cael ei ailadrodd dro ar ôl tro, ac mae’n amhosib dweud bod un o’r pleidiau yn bendant yn iawn. Bydd un o'r ochrau bob amser yn dominyddu oherwydd cyn gynted ag y bydd un ohonynt bron yn ennill, mae pobl dro ar ôl tro yn dyfeisio ffyrdd o wella'r llall.

Y Gelfyddyd o Ysgrifennu Cod Aml-threaded Brau

Alexey: Mae hyn yn ddiddorol iawn. Er enghraifft, pan fyddwn yn ysgrifennu cod, ni waeth pa iaith raglennu, fel arfer mae'n rhaid i ni greu tyniadau fel celloedd y gellir eu darllen a'u hysgrifennu. Ond mewn gwirionedd, ar ryw lefel gorfforol, gall hyn edrych fel anfon neges dros fws caledwedd rhwng gwahanol gyfrifiaduron a dyfeisiau eraill. Mae'n ymddangos bod gwaith yn digwydd ar y ddwy lefel o dynnu dŵr ar unwaith.

Maurice: Mae'n hollol wir bod cof a rennir yn cael ei adeiladu ar drosglwyddo negeseuon - bysiau, caches, ac ati. Ond mae'n anodd ysgrifennu rhaglenni gan ddefnyddio trosglwyddo negeseuon, felly mae'r caledwedd yn gorwedd yn fwriadol, gan esgus bod gennych ryw fath o gof unffurf. Bydd hyn yn ei gwneud yn haws i chi ysgrifennu rhaglenni syml, cywir cyn i berfformiad ddechrau dirywio. Yna byddwch chi'n dweud: mae'n edrych fel ei bod hi'n bryd gwneud ffrindiau gyda'r storfa. Ac yna byddwch yn dechrau poeni am leoliad y storfa, ac oddi yno mae'n mynd. Ar un ystyr, rydych chi'n hacio'r tynnu: rydych chi'n gwybod nad yw'n gof gwastad, unffurf yn unig, ac rydych chi'n mynd i ddefnyddio'r wybodaeth honno i ysgrifennu rhaglenni sy'n gyfeillgar i storfa. Dyma beth fydd yn rhaid i chi ei wneud mewn problemau go iawn. Y gwrthdaro hwn rhwng y tynnu melys, syml, braf a roddwyd i chi a gweithrediad erchyll o gymhleth y caledwedd sylfaenol yw lle bydd pawb yn gwneud eu cyfaddawd eu hunain. Mae gen i lyfr am amlbroseswyr a chydamseru, ac ar un adeg roeddwn i'n mynd i ysgrifennu pennod ar strwythurau data yn java.util.cydamserol. Os edrychwch arnyn nhw, pethau fel rhestrau gyda hepgoriadau Mae'r rhain yn weithiau celf anhygoel. (Nodyn y golygydd: Dylai'r rhai sy'n gyfarwydd â'r iaith Java o leiaf edrych ar y gweithrediad Map Rhestr Sgipiau Cydamserol, gallwch edrych ar y dolenni yn API и cod ffynhonnell). Ond o fy safbwynt i, byddai'n anghyfrifol eu dangos i fyfyrwyr, oherwydd mae strwythur data o'r fath yn debyg i ddyn mewn syrcas yn rhedeg ar raff dynn dros bwll arth. Os byddwch chi'n newid hyd yn oed un manylyn bach, bydd y strwythur cyfan yn cwympo. Mae'r cod hwn yn gyflym iawn ac yn gain dim ond oherwydd ei fod wedi'i ysgrifennu'n berffaith, ond bydd y newid lleiaf yn arwain at fethiant llwyr. Os rhoddaf y cod hwn fel enghraifft i fyfyrwyr, byddant yn dweud ar unwaith: Gallaf wneud hynny hefyd! Ac yna bydd rhyw awyren yn chwalu neu bydd adweithydd niwclear yn ffrwydro, a byddaf yn euog o roi gormod o wybodaeth iddynt ar yr amser anghywir.

Alexey: Pan oeddwn ychydig yn iau, sawl gwaith ceisiais astudio cod ffynhonnell Doug Lee, er enghraifft, java.util.cydamserol, oherwydd ei fod yn ffynhonnell agored, mae'n hawdd iawn dod o hyd iddo a cheisio deall beth sy'n digwydd yno. Ni ddaeth yn dda iawn: yn aml, mae'n gwbl aneglur pam y penderfynodd Doug wneud rhywbeth fel hyn pan fydd pawb arall yn ei wneud yn wahanol. Sut ydych chi'n esbonio'r pethau hyn i'ch myfyrwyr? A oes ffordd gywir benodol o ddisgrifio manylion penodol algorithm craidd caled, er enghraifft? Sut ydych chi'n gwneud hyn?

Maurice: Mae gan athrawon lluniadu ystrydeb y maen nhw'n ei chofio gyntaf: os ydych chi eisiau lluniadu fel Picasso, yn gyntaf mae angen i chi ddysgu sut i dynnu lluniau realistig syml, a dim ond pan fyddwch chi'n gwybod y rheolau y gallwch chi ddechrau eu torri. Os dechreuwch drwy dorri'r rheolau ar unwaith, byddwch mewn llanast yn y pen draw. Yn gyntaf, rwy'n dysgu myfyrwyr sut i ysgrifennu cod syml, cywir heb boeni am berfformiad. Yr hyn rwy'n ei ddweud yw, mae yna faterion amseru cymhleth yn llechu yma, felly peidiwch â phoeni am caches, peidiwch â phoeni am fodelau cof, gwnewch yn siŵr bod popeth yn gweithio'n gywir. Mae hyn eisoes yn ddigon anodd: nid yw rhaglennu modern yn hawdd ynddo'i hun, yn enwedig i fyfyrwyr newydd. A phan fydd ganddynt greddf ynglŷn â sut i ysgrifennu'r rhaglenni cywir, dywedaf: edrychwch ar y ddau weithrediad spinlock hyn: mae un yn araf iawn, ac nid yw'r ail hefyd yn iawn, ond yn well. Fodd bynnag, yn fathemategol mae'r ddau algorithm yr un peth. Mewn gwirionedd, mae un ohonynt yn defnyddio lleoliad cache. Mae un ohonynt yn rhedeg ar ddata sydd wedi'i storio'n lleol, ac mae'r llall yn perfformio gweithrediadau dro ar ôl tro ar draws y bws. Ni allwch ysgrifennu cod effeithlon os nad ydych yn deall beth ydyw, ac nad ydych yn gwybod sut i dorri'r tynnu ac edrych ar y strwythur sylfaenol. Ond ni fyddwch yn gallu dechrau gwneud hyn ar unwaith. Mae yna bobl sy'n dechrau gwneud hyn ar unwaith ac yn credu yn eu hathrylith eu hunain, fel arfer mae'n dod i ben yn wael oherwydd nad ydyn nhw'n deall yr egwyddorion. Does neb yn tynnu lluniau fel Picasso nac yn ysgrifennu rhaglenni fel Doug Lee yn ffres allan o'r coleg yn ei wythnos gyntaf. Mae'n cymryd blynyddoedd i gyrraedd y lefel hon o wybodaeth.

Alexey: Mae'n troi allan eich bod yn rhannu'r broblem yn ddwy ran: y cyntaf yw cywirdeb, yr ail yw perfformiad?

Maurice: Yn union. Ac, yn union yn y drefn honno. Rhan o'r broblem yw nad yw myfyrwyr newydd yn deall bod cywirdeb yn anodd ei gyflawni. Ar yr olwg gyntaf maen nhw'n dweud: mae hyn yn amlwg yn gywir, y cyfan sydd ar ôl yw ei gyflymu. Felly weithiau dwi'n dweud wrthyn nhw am algorithm anghywir i ddechrau fel pe bai'n gywir.

Sut i ddysgu myfyrwyr i ysgrifennu cod aml-threaded cymhleth

Alexey: Dim ond i weld a allant synhwyro'r dal?

Maurice: Rwyf bob amser yn rhybuddio ymlaen llaw y byddaf yn cynnig algorithmau anghywir weithiau. Ni ddylech dwyllo pobl. Rwy'n awgrymu eu bod yn cymryd y wybodaeth gyda gronyn o halen. Os byddaf yn dweud rhywbeth ac yn dweud: “edrychwch, mae hyn yn amlwg yn gywir” - mae hwn yn arwydd eu bod yn ceisio eich twyllo yn rhywle, a dylech ddechrau gofyn cwestiynau. Nesaf, rwy’n ceisio annog myfyrwyr i barhau i ofyn cwestiynau, ac yna rwy’n awgrymu, “Beth fydd yn digwydd os byddwn yn gadael pethau fel ag y maent?” Ac maen nhw'n gweld y camgymeriad ar unwaith. Ond mae argyhoeddi myfyrwyr bod angen iddynt boeni am gywirdeb yn llawer anoddach nag y mae'n ymddangos ar yr olwg gyntaf. Mae llawer o'r myfyrwyr hyn yn dod â phrofiad rhaglennu yn yr ysgol uwchradd, mae rhai wedi cael swyddi ac wedi gwneud rhaglennu yno, ac maent i gyd yn llawn hyder. Mae hyn yn rhywbeth fel y fyddin: yn gyntaf mae'n rhaid i chi newid eu hwyliau er mwyn eu darbwyllo i fynd ati'n amyneddgar i ddatrys problemau sy'n codi. Neu efallai ei fod fel mynachod Bwdhaidd: yn gyntaf maen nhw'n dysgu rhesymu am gywirdeb, ac unwaith maen nhw'n deall y ffyrdd o resymu am gywirdeb, maen nhw'n cael symud i'r lefel nesaf a dechrau poeni am berfformiad.

Alexey: Hynny yw, weithiau rydych chi'n dangos enghreifftiau nad ydyn nhw'n gweithio i fyfyrwyr, diolch i hynny rydych chi'n cael adborth yn dangos a ydyn nhw'n deall hanfod y broblem, a ydyn nhw'n gallu dod o hyd i'r cod anghywir a'r canlyniad anghywir. Felly, a yw myfyrwyr fel arfer yn eich gwneud chi'n hapus neu'n drist?

Maurice: Mae myfyrwyr bron bob amser yn canfod y camgymeriad yn y pen draw. Os byddant yn chwilio'n rhy araf, gofynnaf gwestiynau arweiniol, ac yma mae'n bwysig deall, os na fyddwch byth yn eu twyllo, y byddant yn dechrau dirnad eich geiriau fel y gwir eithaf yn ddifeddwl. Yna byddant yn diflasu ac yn dechrau cwympo i gysgu wrth ddarllen Facebook ar eu gliniadur yn ystod y dosbarth. Ond pan fyddwch chi'n dweud wrthyn nhw ymlaen llaw y byddan nhw'n cael eu twyllo, ac y byddan nhw'n edrych yn dwp os nad ydyn nhw'n synhwyro tric, maen nhw'n dod yn llawer mwy gwyliadwrus. Mae hyn yn dda mewn gwahanol ffyrdd. Hoffwn i fyfyrwyr nid yn unig gwestiynu eu dealltwriaeth o'r mater, ond hefyd gwestiynu awdurdod yr athro. Y syniad yw y gall myfyriwr godi ei law unrhyw bryd a dweud: Rwy'n meddwl bod yr hyn yr ydych newydd ei ddweud yn anghywir. Mae'n arf dysgu pwysig. Nid wyf am i unrhyw un o'r myfyrwyr eistedd a meddwl yn dawel drostynt eu hunain: mae hyn i gyd yn ymddangos yn nonsens llwyr, ond mae codi'ch llaw yn rhy frawychus, a beth bynnag, mae'n athro, felly mae popeth y mae'n ei ddweud yn wir. Felly, os cânt eu rhybuddio ymlaen llaw nad yw popeth a ddywedir o reidrwydd yn wir, mae ganddynt gymhelliant i dalu mwy o sylw i'r deunydd. Rwy’n ei gwneud yn glir ei bod yn iawn codi eich llaw a gofyn cwestiynau. Efallai bod eich cwestiwn yn swnio'n dwp neu'n naïf, ond yn aml dyma sut mae'r cwestiynau gorau yn codi.

Alexey: Diddorol iawn. Fel arfer mae gan bobl ryw fath o rwystr seicolegol nad yw'n caniatáu iddynt ofyn cwestiwn i athro. Yn enwedig os oes llawer o bobl yn yr ystafell, ac mae pawb yn ofni y bydd trafod eich cwestiwn gwirion yn cymryd holl amser y bobl hyn. A oes unrhyw driciau i ddelio â hyn?

Maurice: Byddaf yn aml yn stopio ac yn gofyn cwestiynau clasurol. A fyddai datganiad yn gywir, neu sut y byddent yn datrys y broblem sy'n cael ei thrafod. Mae hwn yn weithred allweddol, yn enwedig ar ddechrau gwers pan fydd pobl yn teimlo embaras i ddweud hyd yn oed y peth lleiaf. Rydych chi'n gofyn cwestiwn i'r myfyrwyr ac yn dweud dim byd pellach. Mae yna dawelwch, mae pawb yn mynd ychydig yn llawn tyndra, mae'r tensiwn yn cynyddu, yna'n sydyn mae rhywun yn methu â'i sefyll, yn torri i lawr ac yn dweud yr ateb. Dyma sut rydych chi'n troi'r sefyllfa o gwmpas: mae parhau i fod yn dawel yn dod yn fwy anodd ac anghyfleus nag ateb! Mae hwn yn dric pedagogaidd safonol. Dylai pob athro yn y byd wybod sut i wneud hyn.

Alexey: Nawr mae gennym ni deitl rhagorol ar gyfer y cyfweliad hwn: “mae'n haws ei ateb nag aros yn dawel.”

Vitaly: Gadewch imi ofyn eto. Rydych chi'n gweithio ar broflenni topolegol. Sut wnaethoch chi hyd yn oed gymryd rhan yn hyn, oherwydd mae cyfrifiadura dosranedig a thopoleg yn bethau hollol wahanol!

Maurice: Mae yna gysylltiad cudd yno. Pan oeddwn yn fyfyriwr yn astudio mathemateg, astudiais fathemateg bur. Doedd gen i ddim gwir ddiddordeb mewn cyfrifiaduron nes i fy astudiaethau ddod i ben a chefais fy hun yn wynebu'r angen dybryd i chwilio am swydd. Fel myfyriwr astudiais dopoleg algebraidd. Flynyddoedd lawer yn ddiweddarach, tra'n gweithio ar broblem o'r enw "Problem Cytundeb k-Set", Defnyddiais graffiau i fodelu’r broblem ac, fel yr oedd yn ymddangos ar y pryd, roeddwn wedi dod o hyd i ateb. Roedd yn rhaid i chi eistedd i lawr a mynd o gwmpas y cyfrif. Ceisiwch ddod o hyd i ateb addas ar y graff hwn. Ond ni weithiodd fy algorithm: daeth i'r amlwg y byddai'n rhedeg mewn cylchoedd am byth. Yn anffodus, ni ellid esbonio hyn i gyd yn iaith ffurfiol theori graff - yr un y mae'r holl wyddonwyr cyfrifiadurol yn ei wybod. Ac yna cofiais ein bod yn defnyddio'r cysyniad flynyddoedd lawer yn ôl, yn ôl mewn dosbarthiadau topoleg "cymhleth syml", sef cyffredinoliad o graffiau i ddimensiynau uwch. Yna gofynnais i mi fy hun: beth fyddai'n digwydd pe baem yn ailfformiwleiddio'r broblem o ran cyfadeiladau syml? Daeth hyn yn foment allweddol. Trwy ddefnyddio ffurfioldeb mwy pwerus, daw'r broblem yn llawer symlach yn sydyn. Brwydrodd pobl yn ei erbyn am amser hir, gan ddefnyddio graffiau, ond ni allent wneud unrhyw beth. A hyd yn oed nawr ni allant - nid oedd yr ateb cywir yn algorithm, ond yn brawf o amhosibl datrys y broblem. Hynny yw, nid yw algorithm o'r fath yn bodoli. Ond pob prawf o anmhosiblrwydd yn seiliedig naill ai ar gyfadeiladau syml neu ar bethau yr oedd pobl yn esgus nad oeddent yn ystyried cyfadeiladau syml. Dim ond oherwydd eich bod yn galw rhywbeth yn enw newydd, nid yw'n colli ei hanfod.

Vitaly: Mae'n troi allan eich bod yn lwcus?

Maurice: Ar wahân i lwc, mae hefyd parodrwydd. Mae hyn yn golygu na ddylech anghofio'r pethau "diwerth" a ddysgoch yn gynharach. Po fwyaf o bethau diwerth y byddwch chi'n eu dysgu, y mwyaf o syniadau y gallwch chi eu tynnu pan fyddwch chi'n wynebu problem newydd. Mae'r math hwn o baru patrwm greddfol yn bwysig oherwydd... Gadewch i ni wneud hyn, dyma gadwyn: i ddechrau darganfyddais nad oedd y graffiau'n gweithio o gwbl neu nad oeddent yn gweithio o gwbl, fe wnaeth fy atgoffa o rywbeth o ddigwyddiadau wyth flynyddoedd yn ôl a fy mlynyddoedd myfyriwr , pan fyddwn yn astudio'r holl gymhlethdodau syml hyn . Roedd hyn yn ei dro yn fy ngalluogi i ddod o hyd i fy hen werslyfr topoleg a'i lwytho'n ôl i fy mhen. Ond oni bai am yr hen wybodaeth honno, ni fyddwn byth wedi gwneud unrhyw gynnydd wrth ddatrys y broblem wreiddiol.

Argraffiad newydd o'r llyfr “The Art of Multiprocessor Programming”

Alexey: Fe ddywedoch chi ychydig eiriau am eich llyfr. Mae'n debyg nad dyma'r gyfrinach waethaf i chi ysgrifennu llyfr enwocaf y byd ar aml-edau, "Celfyddyd Rhaglennu Amlbrosesydd". Mae eisoes tua 11 oed ac ers hynny dim ond wedi cael ei ryddhau  adargraffiad diwygiedig. A fydd ail argraffiad?

Maurice: Mae'n dda eich bod wedi gofyn! Bydd yn fuan iawn, ymhen rhyw dri mis. Mae dau awdur arall, fe wnaethom ychwanegu llawer mwy o ddeunydd, gwella’r adran ar fforch/uno paraleliaeth, ysgrifennu adran ar MapReduce, ychwanegu llawer o bethau newydd a thaflu pethau diangen allan - rhywbeth a oedd yn ddiddorol iawn ar adeg ysgrifennu yr argraffiad cyntaf, ond nid yw yno bellach. Y canlyniad oedd llyfr wedi'i ddiwygio'n ddifrifol iawn.

Alexey: Mae popeth wedi'i wneud yn barod, y cyfan sydd ar ôl yw ei ryddhau?

Maurice: Mae angen rhywfaint o waith o hyd ar un neu ddau o benodau. Mae ein cyhoeddwr (sydd yn fy marn i eisoes yn ein casáu) yn dal i geisio cyfleu’r neges y dylem weithio’n gynt. Rydym ymhell ar ei hôl hi. Yn ddamcaniaethol, gallem fod wedi gwneud y llyfr hwn ychydig flynyddoedd ynghynt.

Alexey: Unrhyw siawns o gael fersiwn newydd o'r llyfr cyn y Nadolig?

Maurice: Dyma ein nod! Ond rydw i wedi rhagweld buddugoliaeth gymaint o weithiau fel nad oes neb yn fy nghredu mwyach. Mae'n debyg na ddylech ymddiried gormod ynof yn y mater hwn ychwaith.

Alexey: Beth bynnag, mae hyn yn newyddion gwych. Hoffais y rhifyn cyntaf o'r llyfr yn fawr. Fe allech chi ddweud fy mod i'n gefnogwr.

Maurice: Gobeithio y bydd y rhifyn newydd yn deilwng o'ch brwdfrydedd brwd, diolch!

Sut y Dyfeisiwyd Cof Trafodol

Vitaly: Mae'r cwestiwn nesaf yn ymwneud â chof trafodaethol. Hyd y deallaf, rydych chi'n arloeswr yn y maes hwn, fe wnaethoch chi ei ddyfeisio ar adeg pan nad oedd neb yn meddwl am bethau o'r fath. Pam wnaethoch chi benderfynu symud i'r maes hwn? Pam roedd trafodion yn ymddangos yn bwysig i chi? Oeddech chi'n meddwl y byddent yn cael eu gweithredu rywbryd mewn caledwedd?

Maurice: Rwyf wedi gwybod am drafodion ers fy nyddiau ymchwil graddedig.

Vitaly: Ydy, ond mae'r rhain yn drafodion gwahanol!

Maurice: Gweithiais gydag Elliott Moss ar gasglu sbwriel nad yw'n blocio. Ein problem oedd ein bod am newid ychydig eiriau yn atomig yn y cof ac yna byddai'r algorithmau'n dod yn syml iawn, ac o leiaf byddai rhai ohonynt yn dod yn fwy effeithlon. Defnyddio cymharu-a-cyfnewid gyfer llwyth-dolen/storfa-amodola ddarperir gan y bensaernïaeth gyfochrog, mae'n bosibl gwneud rhywbeth, ond mae'n aneffeithlon ac yn hyll iawn oherwydd byddai'n rhaid i chi ddelio â haenau o angyfeiriad. Rwyf am newid geiriau cof ac mae angen i mi newid oherwydd dim ond un pwyntydd y gallaf ei newid, felly mae angen iddynt bwyntio at ryw fath o strwythur tebyg i gyfeiriadur. Buom yn siarad am ba mor wych fyddai hi pe gallem newid y caledwedd fel y gallai wneud recordio ar yr un pryd. Mae'n ymddangos bod Elliott wedi sylwi ar hyn: os edrychwch ar brotocolau cydlyniant cache, maent eisoes yn darparu'r rhan fwyaf o'r swyddogaethau gofynnol. Mewn trafodiad optimistaidd, bydd y protocol cydlyniad cache yn sylwi bod gwrthdaro amseru a bydd y cache yn dod yn annilys. Beth sy'n digwydd os ydych chi'n rhedeg trafodiad yn hapfasnachol ar eich storfa ac yn defnyddio'r mecanweithiau protocol cydlyniad i ganfod gwrthdaro? Roedd pensaernïaeth caledwedd hapfasnachol yn hawdd i'w dylunio. Felly dyma ni'n ysgrifennu'r un hwnnw y cyhoeddiad cyntaf un am gof trafodaethol. Ar yr un pryd, roedd y cwmni roeddwn i'n gweithio iddo, Digital Equipment Corporation, yn creu prosesydd 64-bit newydd o'r enw Alpha. Felly euthum a rhoi cyflwyniad i grŵp datblygu Alpha am ein cof trafodaethol anhygoel a gofynasant: Faint o refeniw ychwanegol y byddai ein cwmni yn ei gael pe byddem yn ychwanegu hyn i gyd yn uniongyrchol at y prosesydd? Ac nid oedd gennyf unrhyw ateb o gwbl i hyn, gan fy mod yn dechnolegydd, nid wyf yn arbenigwr marchnata. Doedd gen i ddim byd i'w ateb mewn gwirionedd. Doedden nhw ddim wedi creu argraff fawr nad oeddwn i'n gwybod dim byd.

Vitaly: Biliynau! Dim ond dweud biliynau!

Maurice: Ie, dyna beth ddylwn i fod wedi ei ddweud. Nawr, yn oes y busnesau newydd a phopeth, rwy'n gwybod sut i ysgrifennu cynllun busnes. Y gallwch chi ddweud celwydd ychydig am faint eich elw posibl. Ond yn y dyddiau hynny roedd yn ymddangos yn naïf, felly dywedais, “Dydw i ddim yn gwybod.” Os edrychwch ar hanes y cyhoeddiad ar gof trafodaethol, fe sylwch fod sawl cyfeiriad ato ar ôl blwyddyn, ac yna am tua deng mlynedd ni chyfeiriodd neb at y papur hwn o gwbl. Ymddangosodd y dyfyniadau tua 2004, pan ymddangosodd gwir aml-greiddiau. Pan ddarganfu pobl y gallai ysgrifennu cod cyfochrog wneud arian, dechreuodd ymchwil newydd. Ravi Rajwar ysgrifennodd erthygl, a gyflwynodd y cysyniad o gof trafodaethol i'r brif ffrwd mewn rhyw ffordd. (Nodyn y golygydd: Mae ail fersiwn o'r erthygl hon, a ryddhawyd yn 2010 ac sydd ar gael am ddim fel PDF). Yn sydyn sylweddolodd pobl yn union sut y gellid defnyddio hyn i gyd, sut y gellid cyflymu algorithmau traddodiadol gyda chloeon. Enghraifft dda o rywbeth a oedd yn y gorffennol yn ymddangos fel problem academaidd ddiddorol yn unig. Ac ie, pe baech wedi gofyn imi bryd hynny a oeddwn yn meddwl y byddai hyn i gyd yn bwysig yn y dyfodol, byddwn wedi dweud: wrth gwrs, ond nid yw pryd yn union yn glir. Efallai mewn 50 mlynedd? Yn ymarferol, dim ond degawd oedd hyn. Mae'n braf iawn pan fyddwch chi'n gwneud rhywbeth ac ar ôl dim ond deng mlynedd mae pobl yn sylwi arno.

Pam ei bod yn werth cynnal ymchwil ym maes cyfrifiadura gwasgaredig

Vitaly: Os byddwn yn siarad am ymchwil newydd, beth fyddech chi'n ei gynghori i ddarllenwyr - cyfrifiadura gwasgaredig neu aml-graidd a pham? 

Maurice: Y dyddiau hyn mae'n hawdd cael prosesydd aml-graidd, ond mae'n anoddach sefydlu system wir ddosbarthedig. Dechreuais weithio arnyn nhw oherwydd roeddwn i eisiau gwneud rhywbeth gwahanol i fy nhraethawd PhD. Dyma’r cyngor rydw i bob amser yn ei roi i fyfyrwyr newydd: peidiwch ag ysgrifennu parhad o’ch traethawd hir – ceisiwch fynd i gyfeiriad newydd. A hefyd, mae multithreading yn hawdd. Gallaf arbrofi gyda fy fforc fy hun yn rhedeg ar fy ngliniadur heb godi o'r gwely. Ond pe bawn i'n sydyn eisiau creu system ddosbarthedig go iawn, byddai'n rhaid i mi wneud llawer o waith, denu myfyrwyr, ac ati. Rwy'n berson diog a byddai'n well gennyf weithio ar aml-graidd. Mae arbrofi ar systemau aml-graidd hefyd yn haws na gwneud arbrofion ar systemau gwasgaredig, oherwydd hyd yn oed mewn system ddosbarthedig wirion mae gormod o ffactorau y mae angen eu rheoli.

Vitaly: Beth ydych chi'n ei wneud nawr, yn ymchwilio i blockchain? Pa erthyglau y dylech chi roi sylw iddynt gyntaf?

Maurice: Ymddangosodd yn ddiweddar erthygl dda iawn, a ysgrifennais ar y cyd â'm myfyriwr, Vikram Saraf, yn arbennig ar gyfer sgwrs yn Cynhadledd Tokenomcs ym Mharis dair wythnos yn ôl. Mae hon yn erthygl am systemau dosbarthedig ymarferol, lle rydym yn cynnig gwneud Ethereum aml-edau. Ar hyn o bryd, mae contractau smart (cod sy'n rhedeg ar y blockchain) yn cael eu gweithredu'n ddilyniannol. Fe wnaethom ysgrifennu erthygl yn gynharach a oedd yn sôn am ffordd o ddefnyddio trafodion hapfasnachol i gyflymu'r broses. Fe wnaethom gymryd llawer o syniadau o gof trafodion meddalwedd a dweud, os gwnewch y syniadau hyn yn rhan o beiriant rhithwir Etherium, yna bydd popeth yn gweithio'n gyflymach. Ond ar gyfer hyn mae'n angenrheidiol nad oes unrhyw wrthdaro data yn y contractau. Ac yna fe wnaethon ni gymryd yn ganiataol nad oes gwrthdaro o'r fath mewn bywyd go iawn. Ond doedd gennym ni ddim ffordd i ddarganfod. Yna fe ddigwyddodd i ni fod gennym ni bron i ddegawd o hanes contract go iawn ar ein dwylo, felly fe wnaethon ni ollwng y blockchain Ethereum a gofyn i ni'n hunain: beth fyddai'n digwydd pe bai'r cofnodion hanesyddol hyn yn cael eu gweithredu ochr yn ochr? Gwelsom gynnydd sylweddol mewn cyflymder. Yn nyddiau cynnar Ethereum, cynyddodd y cyflymder yn fawr iawn, ond heddiw mae popeth ychydig yn fwy cymhleth, oherwydd mae llai o gontractau ac mae'r tebygolrwydd o wrthdaro dros ddata sy'n gofyn am gyfresoli wedi dod yn uwch. Ond mae hyn i gyd yn waith arbrofol gyda data hanesyddol go iawn. Y peth braf am y blockchain yw ei fod yn cofio popeth am byth, felly gallwn fynd yn ôl mewn amser ac astudio beth fyddai wedi digwydd pe baem wedi defnyddio gwahanol algorithmau i redeg y cod. Sut byddai pobl yn y gorffennol wedi hoffi ein syniad newydd? Mae ymchwil o'r fath yn llawer haws ac yn fwy pleserus i'w wneud, oherwydd mae yna beth sy'n monitro popeth ac yn cofnodi popeth. Mae hyn eisoes yn rhywbeth tebycach i gymdeithaseg nag i ddatblygiad algorithmau.

A yw datblygiad algorithmau wedi dod i ben a sut i symud ymlaen?

Vitaly: Amser ar gyfer y cwestiwn damcaniaethol olaf! A yw'n teimlo bod cynnydd mewn strwythurau data cystadleuol yn lleihau bob blwyddyn? Ydych chi'n meddwl ein bod wedi cyrraedd gwastadedd yn ein dealltwriaeth o strwythurau data neu a fydd rhai gwelliannau mawr? Efallai bod rhai syniadau clyfar a all newid popeth yn llwyr?

Maurice: Efallai ein bod wedi cyrraedd llwyfandir mewn strwythurau data ar gyfer pensaernïaeth draddodiadol. Ond mae strwythurau data ar gyfer pensaernïaeth newydd yn dal i fod yn faes addawol iawn. Os ydych chi am greu strwythurau data ar gyfer, dyweder, cyflymwyr caledwedd, yna mae'r strwythurau data ar gyfer GPU yn wahanol iawn i'r strwythurau data ar gyfer CPU. Pan fyddwch chi'n datblygu strwythurau data ar gyfer cadwyni bloc, mae angen i chi stwnsio darnau o ddata ac yna eu rhoi mewn rhywbeth tebyg Merkle coeden, i atal ffugio. Bu ymchwydd o weithgarwch yn y maes hwn yn ddiweddar, gyda llawer yn gwneud gwaith da iawn. Ond rwy'n meddwl mai'r hyn fydd yn digwydd yw y bydd pensaernïaeth newydd a chymwysiadau newydd yn arwain at strwythurau data newydd. Cymwysiadau etifeddiaeth a phensaernïaeth draddodiadol - efallai na fydd llawer o le i archwilio mwyach. Ond os byddwch chi'n dod oddi ar y llwybr wedi'i guro ac yn edrych y tu hwnt i'r ymylon, fe welwch bethau gwallgof nad yw'r brif ffrwd yn eu cymryd o ddifrif - dyna lle mae'r holl bethau cyffrous yn digwydd mewn gwirionedd.

Vitaly: Felly, er mwyn bod yn ymchwilydd enwog iawn, roedd yn rhaid i mi ddyfeisio fy mhensaernïaeth fy hun :)

Maurice: Gallwch chi "ddwyn" pensaernïaeth newydd rhywun arall - mae'n ymddangos yn llawer haws!

Yn gweithio ym Mhrifysgol Brown

Vitaly: A allech ddweud mwy wrthym am Prifysgol Brownble wyt ti'n gweithio? Nid oes llawer yn hysbys amdano yng nghyd-destun technoleg gwybodaeth. Llai nag am MIT, er enghraifft.

Maurice: Prifysgol Brown yw un o'r prifysgolion hynaf yn yr Unol Daleithiau. Rwy'n credu mai dim ond Harvard sydd ychydig yn hŷn. Brown yn rhan o'r hyn a elwir cynghreiriau eiddew, sy'n gasgliad o wyth prifysgol hynaf. Harvard, Brown, Cornell, Iâl, Columbia, Dartmouth, Pennsylvania, Princeton. Mae'n fath o brifysgol hen, fach ac ychydig yn aristocrataidd. Mae'r prif ffocws ar addysg celfyddydau rhyddfrydol. Nid yw'n ceisio bod fel MIT, mae MIT yn arbenigol iawn ac yn dechnegol. Mae Brown yn lle gwych i astudio Llenyddiaeth Rwsieg neu Roeg Clasurol, ac wrth gwrs, Cyfrifiadureg. Mae'n canolbwyntio ar addysg gyfun. Mae'r rhan fwyaf o'n myfyrwyr yn mynd i Facebook, Apple, Google - felly rwy'n meddwl nad yw ein myfyrwyr yn cael unrhyw broblemau dod o hyd i swydd yn y diwydiant. Es i weithio yn Brown oherwydd roeddwn wedi gweithio yn y gorffennol yn Digital Equipment Corporation yn Boston. Roedd hwn yn gwmni a ddyfeisiodd lawer o bethau diddorol, ond yn gwadu pwysigrwydd cyfrifiaduron personol. Cwmni â thynged anodd, yr oedd ei sylfaenwyr unwaith yn chwyldrowyr ifanc, ni ddysgon nhw ddim ac anghofio dim, ac felly fe droesant o fod yn chwyldroadwyr i adweithyddion ymhen tua dwsin o flynyddoedd. Roeddent yn hoffi cellwair bod cyfrifiaduron personol yn perthyn i'r garej—garej wedi'i gadael, wrth gwrs. Mae’n eithaf amlwg iddynt gael eu dinistrio gan gwmnïau mwy hyblyg. Pan ddaeth yn amlwg fod y cwmni mewn helbul, galwais ar ffrind i mi yn Brown, sydd tuag awr y tu allan i Boston. Doeddwn i ddim eisiau gadael Boston bryd hynny oherwydd doedd dim llawer o agoriadau mewn prifysgolion eraill. Roedd hwn yn adeg pan nad oedd cymaint o swyddi mewn Cyfrifiadureg ag sydd ar hyn o bryd. A chafodd Brown agoriad, doedd dim rhaid i mi symud fy nghartref, doedd dim rhaid i mi symud fy nheulu, a dwi wrth fy modd yn byw yn Boston! Dyna sut penderfynais fynd i Brown. Rwy'n ei hoffi. Mae'r myfyrwyr yn wych, felly wnes i erioed geisio mynd i rywle arall hyd yn oed. Yn ystod fy nghyfnod sabothol, bûm yn gweithio i Microsoft am flwyddyn, es i Technion yn Haifa am flwyddyn, a nawr byddaf yn Algorand. Mae gennyf lawer o gydweithwyr ym mhobman ac felly nid yw lleoliad ffisegol ein hystafelloedd dosbarth mor bwysig â hynny. Ond y peth pwysicaf yw'r myfyrwyr, nhw yw'r gorau yma. Nid wyf erioed wedi ceisio mynd i rywle arall oherwydd rwy'n eithaf hapus yma.

Ond er gwaethaf enwogrwydd Brown yn yr Unol Daleithiau, mae'n rhyfeddol o anhysbys dramor. Fel y gwelwch, yr wyf yn awr yn gwneud popeth posibl i unioni’r sefyllfa hon.

Gwahaniaeth rhwng ymchwil mewn prifysgol ac o fewn corfforaeth

Vitaly: Iawn, mae'r cwestiwn nesaf yn ymwneud ag Offer Digidol. Roeddech chi yno fel ymchwilydd. Beth yw'r gwahaniaeth rhwng gweithio yn adran Ymchwil a Datblygu cwmni mawr a gweithio mewn prifysgol? Beth yw'r manteision a'r anfanteision?

Maurice: Am ugain mlynedd bûm yn gweithio yn Microsoft, yn gweithio'n agos gyda gweithwyr Sun Microsystems, Oracle, Facebook, ac yn awr Algorand. Yn seiliedig ar hyn oll, rwyf am ddweud ei bod yn bosibl cynnal ymchwil o'r radd flaenaf mewn cwmnïau ac mewn prifysgolion. Y gwahaniaeth pwysig yw eich bod yn gweithio gyda chydweithwyr mewn cwmni. Os oes gen i syniad yn sydyn am brosiect nad yw'n bodoli eto, rhaid i mi argyhoeddi fy nghyfoedion bod hwn yn syniad da. Os ydw i yn Brown, yna gallaf ddweud wrth fy myfyrwyr: gadewch i ni weithio ar antigravity! Byddant naill ai'n gadael am rywun arall neu'n ymgymryd â phrosiect. Bydd, bydd angen i mi ddod o hyd i gyllid, bydd angen imi ysgrifennu cais am grant, ac ati. Beth bynnag, bydd llawer o fyfyrwyr bob amser, a byddwch yn gallu gwneud penderfyniadau yn unochrog. Ond yn y brifysgol mae'n debyg na fyddwch chi'n gweithio gyda phobl o'ch lefel chi. Ym myd ymchwil diwydiannol, yn gyntaf mae'n rhaid i chi argyhoeddi pawb bod eich prosiect yn werth ei gymryd. Ni allaf archebu unrhyw beth i unrhyw un. Ac mae'r ddwy ffordd hyn o weithio yn werthfawr, oherwydd os ydych chi'n gweithio ar rywbeth gwallgof iawn a'ch cydweithwyr yn anodd eu darbwyllo, mae'n haws argyhoeddi myfyrwyr graddedig - yn enwedig os ydych chi'n eu talu. Os ydych chi'n gweithio ar rywbeth sy'n gofyn am lawer o brofiad ac arbenigedd dwfn, yna mae angen cydweithwyr arnoch chi a all ddweud “na, mae'n digwydd fel fy mod i'n deall yn y maes hwn ac mae'ch syniad yn ddrwg, ni fydd yn gweithio.” Mae hyn yn ddefnyddiol iawn o ran gwastraffu amser. Hefyd, os ydych chi mewn labordai diwydiannol yn treulio llawer o amser yn ysgrifennu adroddiadau, yna mewn prifysgol rydych chi'n treulio'r amser hwn yn ceisio dod o hyd i arian. Os ydw i eisiau i fyfyrwyr allu mynd i rywle, mae'n rhaid i mi ddod o hyd i'r arian ar ei gyfer yn rhywle arall. A pho fwyaf pwysig yw eich safle yn y brifysgol, y mwyaf o amser sydd gennych i'w dreulio yn codi arian. Felly nawr rydych chi'n gwybod i beth rydw i'n gweithio - cardotyn proffesiynol! Fel un o'r mynachod hynny sy'n cerdded o gwmpas gyda phlât offrwm. Yn gyffredinol, mae'r ddau weithgaredd hyn yn ategu ei gilydd. Dyna pam dwi'n ceisio byw a chadw fy nhraed ar lawr gwlad yn y ddau fyd.

Vitaly: Mae'n ymddangos bod argyhoeddi cwmni yn fwy anodd nag argyhoeddi gwyddonwyr eraill.

Maurice: Anoddach, a llawer mwy. Ar ben hynny, mewn gwahanol feysydd mae'n wahanol: mae rhai yn cynnal ymchwil ar raddfa lawn, tra bod eraill yn canolbwyntio ar eu pwnc. Pe bawn i'n mynd at Microsoft neu Facebook a dweud: gadewch i ni wneud gwrth-ddisgyrchiant, prin y byddent yn ei werthfawrogi. Ond pe bawn i'n dweud yn union yr un peth wrth fy myfyrwyr graddedig, byddent yn fwyaf tebygol o gyrraedd y gwaith ar unwaith, er y byddai gennyf broblemau nawr - wedi'r cyfan, mae angen i mi ddod o hyd i arian ar gyfer hyn. Ond cyn belled â'ch bod chi eisiau gwneud rhywbeth sy'n cyd-fynd â nodau'r cwmni, gall y cwmni hwnnw fod yn lle da iawn i wneud ymchwil.

Hydra a SPTDC

Vitaly: Mae fy nghwestiynau yn dod i ben, felly gadewch i ni siarad ychydig am y daith sydd i ddod i Rwsia.

Maurice: Ydw, rwy'n edrych ymlaen at ddychwelyd i St.

Alexey: Mae'n anrhydedd cael chi gyda ni eleni. Dyma'ch ail dro yn St Petersburg, iawn?

Maurice: Y trydydd yn barod!

Alexey: Rwy'n deall, ond SPTDC - yn bendant yr ail. Y tro diweddaf y galwyd yr ysgol SPTCC, rydym bellach wedi newid un llythyren (C i D, Concurrent to Distributed) i bwysleisio bod mwy o feysydd yn ymwneud yn benodol â chyfrifiadura dosranedig eleni. Allwch chi ddweud ychydig eiriau am eich adroddiadau yn yr Ysgol a Cynhadledd Hydra?

Maurice: Yn yr Ysgol rydw i eisiau siarad am hanfodion blockchain a beth allwch chi ei wneud ag ef. Hoffwn ddangos bod blockchains yn debyg iawn i'r rhaglennu aml-edau rydym yn gyfarwydd â nhw, ond gyda'u naws eu hunain, ac mae'r gwahaniaethau hyn yn bwysig i'w deall. Os gwnewch gamgymeriad mewn cymhwysiad gwe rheolaidd, mae'n blino. Os byddwch chi'n ysgrifennu cod bygi mewn cais ariannol, bydd rhywun yn bendant yn dwyn eich holl arian. Mae'r rhain yn lefelau cwbl wahanol o gyfrifoldeb a chanlyniadau. Byddaf yn siarad ychydig am brawf-o-waith, am gontractau smart, am drafodion rhwng gwahanol blockchains.

Bydd siaradwyr eraill yn gweithio nesaf ataf sydd hefyd â rhywbeth i'w ddweud am blockchain, a gwnaethom gytuno i gydlynu â'n gilydd fel bod ein straeon yn cyd-fynd yn dda. Ond ar gyfer yr adroddiad peirianneg, rwyf am ddweud wrth gynulleidfa eang esboniad dealladwy pam na ddylech chi gredu popeth rydych chi'n ei glywed am blockchain, pam mae cadwyni bloc yn faes gwych, sut mae'n cyd-fynd â syniadau hysbys eraill, a pham y dylem ni edrych yn eofn i'r dyfodol.

Alexey: Yn ogystal, rwyf am ddweud na fydd hyn yn digwydd ar ffurf cyfarfod neu grŵp defnyddwyr, fel yr oedd ddwy flynedd yn ôl. Penderfynasom gynnal cynhadledd fechan ger yr ysgol. Y rheswm yw ein bod, ar ôl cyfathrebu â Peter Kuznetsov, wedi sylweddoli bod yr ysgol wedi'i chyfyngu i gant yn unig, efallai 120 o bobl. Ar yr un pryd, mae yna lawer o beirianwyr sydd eisiau cyfathrebu â chi, mynychu cyflwyniadau, ac sydd â diddordeb cyffredinol yn y pwnc. Am y rheswm hwn rydym wedi creu cynhadledd newydd o'r enw Hydra. Gyda llaw, unrhyw syniadau pam Hydra?

Maurice: Achos bydd saith siaradwr? A all eu pennau gael eu torri i ffwrdd, a bydd siaradwyr newydd yn tyfu yn eu lle?

Alexey: Syniad gwych ar gyfer tyfu siaradwyr newydd. Ond mewn gwirionedd, mae stori yma. Cofiwch chwedl Odysseus, lle bu'n rhaid iddo hwylio rhyngddynt Scylla a Charybdis? Rhywbeth tebyg i Charybdis yw Hydra. Y stori yw bod unwaith i mi siarad mewn cynhadledd a siarad am multithreading. Dim ond dau drac oedd yn y gynhadledd hon. Ar ddechrau’r adroddiad, dywedais wrth y gynulleidfa yn y neuadd fod ganddyn nhw bellach ddewis rhwng Scylla a Charybdis. Fy anifail ysbryd yw Charybdis oherwydd mae gan Charybdis lawer o bennau a fy thema yw aml-edafu. Dyma sut mae enwau cynadleddau yn ymddangos.

Beth bynnag, rydym wedi rhedeg allan o gwestiynau ac amser. Felly, diolch i chi, ffrindiau, am gyfweliad gwych, a gweld chi yn Ysgol SPTDC a Hydra 2019!

Gallwch barhau â'ch sgwrs gyda Maurice yng nghynhadledd Hydra 2019, a gynhelir ar Orffennaf 11-12, 2019 yn St Petersburg. Bydd yn dod gydag adroddiad "Bloc gadwyni a dyfodol cyfrifiadura dosranedig". Gellir prynu tocynnau ar y wefan swyddogol.

Ffynhonnell: hab.com

Ychwanegu sylw