"Ang empirikal nga mga resulta alang lamang sa pagmantala, ang tinuod nga motibo sa trabaho kay aesthetic." Nindot nga interbyu uban ni Michael Scott

"Ang empirikal nga mga resulta alang lamang sa pagmantala, ang tinuod nga motibo sa trabaho kay aesthetic." Nindot nga interbyu uban ni Michael Scott Michael Scott - sulod sa 34 ka tuig isip propesor sa Computer Science sa Unibersidad sa Rochester, ug sa iyang balay nga Unibersidad sa Wisconsin–Madison siya dean sulod sa lima ka tuig. Siya nagsiksik ug nagtudlo sa mga estudyante mahitungod sa parallel ug distributed nga programming ug language design.

Nahibal-an sa kalibutan si Michael gikan sa libro "Programming Language Pragmatics", unsa man ang trabaho "Mga algorithm alang sa scalable nga pag-synchronize sa shared-memory multiprocessors" nakadawat sa Dijkstra Prize isip usa sa labing inila sa natad sa distributed computing. Mahimo nga nahibal-an usab nimo siya ingon ang tagsulat sa kana nga algorithm Michael-Scott.

Kauban ni Doug Lee, iyang gimugna ang mga non-blocking algorithm ug mga dungan nga pila nga nagpalihok sa mga librarya sa Java. Pagpatuman "dual nga istruktura sa datos" sa JavaSE 6 gipauswag ang pasundayag sa 10 ka beses ThreadPoolExecutor.

Mga Kaundan:

  • Sayo nga karera, Unibersidad sa Rochester. Project Charlotte, Lynx nga pinulongan;
  • IEEE Scalable Coherent Interface, MCS locking;
  • Kaluwasan sa nagbag-o nga kalibutan;
  • Ang mga estudyante ba nahimong tanga? Mga uso sa kalibutan, internasyonalisasyon;
  • Epektibo nga trabaho uban sa mga estudyante;
  • Giunsa ang pagpadayon sa pag-andam sa bag-ong mga kurso ug libro;
  • Mga link tali sa negosyo ug akademya;
  • Praktikal nga pagpatuman sa mga ideya. MCS, MS, CLH, JSR 166, nagtrabaho kauban si Doug Lee ug uban pa;
  • Transaksyonal nga memorya;
  • Bag-ong mga arkitektura. Ang kadaugan sa transactional memory haduol na;
  • Non-volatile memory, Optane DIMM, ultra-fast nga mga himan;
  • Ang sunod nga dako nga uso. Doble nga istruktura sa datos. Hydra.

Ang interbyu gihimo ni:

Vitaly Aksenov - karon usa ka postdoc sa IST Austria ug usa ka miyembro sa Departamento sa Computer Technologies sa ITMO University. Nagdumala sa panukiduki sa natad sa teorya ug praktis sa mga istruktura sa datos sa kompetisyon. Sa wala pa magtrabaho sa IST, nakadawat siya sa iyang PhD gikan sa Paris Diderot University ug ITMO University ubos sa pagdumala ni Propesor Peter Kuznetsov.

Alexey Fedorov - Producer sa JUG Ru Group, usa ka kompanya sa Russia nga nag-organisar sa mga komperensya alang sa mga developer. Si Alexey miapil sa pag-andam sa labaw pa sa 50 nga mga komperensya, ug ang iyang resume naglakip sa tanan gikan sa posisyon sa usa ka development engineer sa Oracle (JCK, Java Platform Group) ngadto sa posisyon sa usa ka developer sa Odnoklassniki.

Vladimir Sitnikov - Engineer sa Netcracker. Napulo ka tuig nga pagtrabaho sa performance ug scalability sa NetCracker OS, software nga gigamit sa mga telecom operators aron ma-automate ang mga proseso sa pagdumala sa network ug network equipment. Interesado sa mga isyu sa performance sa Java ug Oracle Database. Awtor sa labaw pa sa usa ka dosena nga pagpaayo sa pasundayag sa opisyal nga drayber sa PostgreSQL JDBC.

Sayo nga karera, Unibersidad sa Rochester. Proyekto sa Charlotte, Lynx nga pinulongan.

Alexey: Sa pagsugod, gusto nakong isulti kanimo nga sa Russia kitang tanan nahigugma sa Computer Science, Data Science ug algorithm. Kini hilabihan ka malaw-ay. Gibasa namo ang tanan libro nga Cormen, Leiserson ug Rivest. Busa, ang umaabot nga komperensya, eskuylahan ug kini nga interbyu mismo kinahanglan nga sikat kaayo. Nakadawat kami og daghang mga pangutana alang niini nga interbyu gikan sa mga estudyante, programmer, ug mga miyembro sa komunidad, mao nga kami mapasalamaton kaayo alang niini nga oportunidad. Nakakuha ba ang Computer Science sa parehas nga gugma sa US?

Michael: Ang atong natad kay lainlain kaayo, kini adunay daghan kaayo nga mga direksyon, ug kini makaapekto sa katilingban sa daghang lain-laing mga paagi nga lisud alang kanako sa paghatag kaninyo sa usa ka tino nga tubag. Apan ang tinuod mao nga kini nagdala sa daghang mga pagbag-o sa negosyo, industriya, arte ug katilingban sa kinatibuk-an sa miaging 30 ka tuig.

Vitali: Magsugod ta sa usa ka butang nga layo. Sa daghang mga unibersidad adunay usa ka butang nga sama sa espesyalista sa usa ka partikular nga lugar. Para sa Carnegie Mellon University kini parallel computing, para sa MIT kini cryptography, robots ug multithreading. Aduna bay ingon nga espesyalisasyon sa Unibersidad sa Rochester?

Michael: Sa tinuod lang, moingon ko nga ang CMU ug MIT espesyalista sa tanang dapit. Ang among departamento kanunay nga naghatag ug labing pagtagad sa artificial intelligence. Katunga sa mga tawo nga nagtrabaho alang kanamo nalambigit sa AI o interaksyon sa tawo-computer - kini nga bahin mas taas kaysa sa ubang mga departamento, ug kanunay nga ingon niana. Apan sa dihang naa ko sa unibersidad, wala koy mga kurso sa AI, ug wala gyud ko nagtrabaho niini nga natad. Busa ang akong departamento nag-espesyalisar sa usa ka problema nga wala koy labot. Ang paghupay mao nga ang ikaduha nga labing hinungdanon nga problema sa among departamento mao ang parallel ug multi-threaded programming, nga mao, ang akong espesyalisasyon.

Vitali: Nagsugod ka sa pagtrabaho sa Computer Science sa dihang ang natad sa multi-threaded programming bag-o lang mitumaw. Ang lista sa imong mga publikasyon nagpakita nga ang imong unang mga buhat nag-atubang sa usa ka medyo halapad nga mga isyu: pagdumala sa memorya sa multi-threaded nga mga sistema, gipang-apod-apod nga mga sistema sa file, mga operating system. Ngano nga ang ingon nga versatility? Naningkamot ka ba nga makit-an ang imong lugar sa komunidad sa panukiduki?

Michael: Isip usa ka estudyante, miapil ko Proyekto ni Charlotte sa Unibersidad sa Wisconsin, diin ang usa sa unang gipang-apod-apod nga mga operating system naugmad. Didto ko nagtrabaho kauban si Rafael Finkel (Raphael Finkel) ug Marvin Solomon (Marvin Solomon). Ang akong disertasyon gipahinungod sa pagpalambo sa usa ka pinulongan alang sa sistema sa software alang sa gipang-apod-apod nga mga sistema - karon ang tanan nakalimot niini, ug salamat sa Dios. Gibuhat nako ang Lynx programming language, nga gituyo aron mas sayon ​​ang paghimo og mga server alang sa usa ka loosely coupled distributed operating system. Tungod kay nianang panahona ako nag-una nga nalambigit sa mga operating system, akong gihunahuna nga ang akong karera sa panguna konektado kanila. Apan ang Rochester usa ka gamay kaayo nga unibersidad, ug tungod niini, ang lainlaing mga grupo didto nakig-uban pag-ayo sa usag usa. Wala'y usa ka dosena nga ubang mga operating system nga mga tawo didto nga akong pakigsultihan, mao nga ang tanan nakong mga kontak kay sa mga tawo nga nagtrabaho sa hingpit nga lainlaing mga lugar. Nalingaw kaayo ko niini, ang pagka- all-rounder usa ka dako nga bentaha alang kanako. Kung espesipiko nga maghisgot kami bahin sa mga istruktura sa datos nga daghang sinulud ug mga algorithm sa pag-synchronize, nan nagsugod ako sa pagtrabaho niini nga wala’y aksidente.

IEEE Scalable Coherent Interface, MCS locking.

Vitali: Mahimo ba nimo isulti kanako ang gamay bahin niini?

Michael: Kini usa ka kataw-anan nga istorya nga dili ako kapuyon sa pagsulti sa tanan. Nahitabo kini sa usa ka komperensya ASPLOS sa Boston - kini sa ulahing bahin sa 80s o sayo sa 90s. John Mellor-Crummey (John Mellor-Crummey), usa ka gradwado sa among faculty. Nakaila ko niya, pero wala pa mi nag joint research kaniadto. Mary Vernon (Mary Vernon) gikan sa Wisconsin mihatag ug pakigpulong mahitungod sa usa ka multiprocessor system nga ilang gipalambo sa Wisconsin: Wisconsin Multicube. Kini nga Multicube adunay mekanismo sa pag-synchronize sa lebel sa hardware nga gitawag nga Q sa Sync Bit, ug sa ulahi giilisan kini og ngalan nga Q sa Lock Bit tungod kay morag Colby cheese kini, nga usa ka pun. Kung interesado ka sa mga mekanismo sa multithreading, tingali nahibal-an nimo nga ang Colby sa kadugayan nahimo nga makina sa pag-synchronize alang sa sumbanan nga IEEE Scalable Coherent Interface. Kini usa ka mekanismo sa pag-lock nga nagmugna og mga pointer gikan sa usa ka cache ngadto sa lain sa lebel sa hardware aron ang matag tag-iya sa kandado mahibal-an kung kinsa ang turno. Sa diha nga si John ug ako nakadungog mahitungod niini, kami nagtinan-away sa usag usa ug miingon: nganong gibuhat kini sa lebel sa hardware? Dili ba makab-ot ang parehas nga butang gamit ang compare-and-swap? Gikuha namo ang usa sa mga notebook nga anaa sa lawak-klasehanan ug gisuwat kini Pag-block sa MCS, samtang si Mary nagpadayon sa iyang taho. Pagkahuman, gipatuman namon kini, gisulayan, ang ideya nahimo nga malampuson, ug gipatik namon ang artikulo. Niadtong panahona, alang kanako, kini nga hilisgutan ingon og usa ka makalingaw nga pagkalinga, pagkahuman nagplano ako nga mobalik sa mga operating system. Apan unya mitungha ang laing problema sa samang linya, ug sa kadugayan ang pag-synchronize, multithreading, ug mga istruktura sa datos nahimong akong espesyalidad. Sama sa imong makita, kini tanan nahitabo sa aksidente.

Vitali: Ako pamilyar sa MCS blocking sa dugay na nga panahon, apan hangtud karon wala ako masayud nga kini imong buhat, ug wala makasabut nga kini usa ka acronym sa imong mga apelyido.

Sa unsa nga paagi nga mabuhi sa usa ka kanunay nga nagbag-o nga kalibutan?

Alexey: Naa koy pangutana bahin sa may kalabutan nga hilisgutan. 30 o 40 ka tuig ang milabay adunay dugang nga kagawasan sa lainlaing mga espesyalista. Kung gusto nimo magsugod usa ka karera sa multithreading o gipang-apod-apod nga mga sistema, welcome ka, kung gusto nimo nga mosulod sa mga operating system, wala’y problema. Sa matag dapit adunay daghang bukas nga mga pangutana ug pipila ka mga eksperto. Ang mga pig-ot nga mga espesyalisasyon mitumaw karon: wala'y mga eksperto lamang sa mga operating system sa kinatibuk-an, adunay mga espesyalista sa indibidwal nga mga sistema. Parehas kini sa multithreading ug distributed nga mga sistema. Apan ang problema mao nga ang atong kinabuhi dili walay katapusan; ang tanan makagugol lamang ug pipila ka dekada sa pagpanukiduki. Sa unsang paagi mabuhi niining bag-ong kalibotan?

Michael: Dili kami espesyal niining bahina; ang samang butang nahitabo kausa sa ubang mga dapit. Ako swerte nga nagsugod ako sa pagtrabaho sa Computer Science sa dihang ang natad anaa sa iyang "pagkatin-edyer" nga mga tuig. Ang ubang mga patukoranan napahimutang na, apan ang tanan dili pa kaayo hamtong. Kini nga oportunidad dili kanunay moabut. Ang electrical engineering dugay na kaayo, ang pisika mas dugay pa, ang matematika hapit sukad pa sa sinugdanan sa panahon. Apan wala kini magpasabot nga wala nay naghimog makaiikag nga mga diskobre sa matematika. Daghan pa ang bukas nga mga problema, apan sa samang higayon, daghan pa ang kinahanglan nga makat-unan. Husto ka nga matikdan nga aduna nay daghang mga espesyalisasyon kaysa kaniadto, apan kini nagpasabut lamang nga makita namon ang among kaugalingon sa parehas nga kahimtang sama sa kadaghanan sa ubang mga bahin sa kalihokan sa tawo.

Alexey: Interesado ako sa mas praktikal nga aspeto sa isyu dinhi. Duna koy background sa matematika, ug sa panahon sa akong pagtuon kanunay kong motambong sa mga komperensya ug nagtrabaho sa lainlaing mga hilisgutan sa siyensya. Akong nadiskobrehan nga walay usa sa mamiminaw nga nakasabut sa akong mga taho, ug sa samang paagi, ang mga taho sa ubang mga tawo masabtan lamang sa ilang kaugalingon. Dili kini ang kaso sa taas nga lebel nga mga hilisgutan, apan sa diha nga magsugod ka sa pagsusi sa usa ka butang, ang mga mamiminaw dili na makasunod kanimo. Giunsa nimo pag-atubang niini?

Michael: Dili kanunay malampuson. Bag-o lang ako nag-andam og usa ka taho diin ako miadto sa lawom nga teknikal nga mga detalye. Samtang nagpadayon ang pakigpulong, nahimong tin-aw nga kadaghanan sa mga mamiminaw wala makasabot kanako, mao nga ako kinahanglang mopahiangay dayon sa situwasyon. Ang mga slide dili mabag-o, mao nga dili kini maayo kaayo - busa, sa kasagaran nga pagsulti, gisulayan nako nga dili mogamit mga slide. Sa kinatibuk-an, ang akong tambag mao ang pagkonsiderar sa imong mamiminaw. Kinahanglan nimong mahibal-an kung kinsa ang imong kaistorya, kung unsa ang lebel sa ilang kahibalo, ug kung unsa ang kinahanglan nilang madungog aron mapasalamatan ang imong trabaho.

Vitali: Mahimo ba nimo nga hatagan kami usa ka timaan kung unsa kini nga lecture?

Michael: Sa tinuud, mas gusto nako nga dili palapdan ang kini nga hilisgutan aron dili mailhan ang mga tawo nga gikuwestiyon. Ang punto mao nga kita kasagarang madalom kaayo sa mga kakuti sa problema nga atong gitrabaho, mao nga maglisud kita sa pagpasabut sa sinugdanan sa pakigpulong ngano nga ang problema makapaikag ug importante ug sa unsang paagi kini nalangkit sa mga isyu nga nasayod na ang audience. Sumala sa akong mga obserbasyon, ang mga estudyante adunay labing kalisud sa pagkat-on niini nga kahanas. Ug kini usab ang huyang nga punto sa akong bag-o nga taho. Ang usa ka tukma nga pagkahan-ay nga taho kinahanglan, gikan sa sinugdanan, makit-an ang kontak sa mamiminaw, ipasabut kanila kung unsa gyud ang problema ug kung giunsa kini kalambigit sa mga hilisgutan nga nahibal-an na niini. Unsa ka teknikal kini nga pasiuna nagdepende sa mamiminaw. Kung kini bug-os nga motley, nan ang taho mahimong multi-stage. Ang pasiuna kinahanglan nga ma-access sa tanan, ug sa katapusan ang piraso mahimo’g dili makapadayon kanimo, apan ang mga tawo nga medyo pamilyar sa imong natad mahibal-an kini.

Ang mga estudyante ba nahimong tanga? Mga uso sa kalibutan, internasyonalisasyon.

Alexey: Nag-obserbar ka sa mga estudyante sulod sa pipila ka mga dekada. Ang mga estudyante ba nahimong dumber o mas maalamon gikan sa dekada ngadto sa dekada o tuig ngadto sa tuig? Sa Russia, ang mga propesor kanunay nga nagreklamo nga ang mga estudyante nahimong dumber matag tuig, ug dili klaro kung unsa ang buhaton bahin niini.

Michael: Makadungog gyud ka og daghang negatibo gikan sa among mga tigulang. Subconsciously, kita adunay kalagmitan nga magdahum nga ang mga estudyante mosuhop sa tanang 30 ka tuig nga kasinatian nga naa na nato. Kung ako adunay mas lawom nga pagsabut kaysa sa akong nabuhat kaniadtong 1985, nganong ang mga estudyante wala niini? Lagmit kay 20 anyos na sila, unsay imong hunahuna? Sa akong hunahuna ang labing hinungdanon nga mga pagbag-o sa bag-ohay nga mga dekada naa sa komposisyon sa demograpiko: kami karon adunay labi ka daghang internasyonal nga mga estudyante, gawas sa mga taga-Canada. Kaniadto daghan ang mga taga-Canada tungod kay duol kaayo kami sa utlanan sa Canada ug ang mga estudyante gikan didto makabiyahe pauli sa katapusan sa semana. Apan karon adunay daghang maayong mga unibersidad sa Canada, ug gusto sa mga taga-Canada nga magtuon dinhi; labi ka gamay sa kanila ang moadto sa USA.

Alexey: Sa imong hunahuna kini ba usa ka lokal nga uso o usa ka global?

Michael: Wala ko kahinumdom sa eksakto kung kinsa, apan adunay miingon nga ang kalibutan patag. Ang among natad nahimong mas internasyonal. Mga Komperensya sa ACM Kaniadto, sila gihimo nga eksklusibo sa sulod sa Estados Unidos, unya nakahukom sila nga huptan kini kausa matag 4 ka tuig sa ubang mga nasud, ug karon kini gihimo sa tibuuk kalibutan. Kini nga mga pagbag-o mas nakaapekto IEEE, tungod kay kini sa kanunay usa ka internasyonal nga organisasyon kay sa ACM. Ug adunay mga lingkuranan sa programa gikan sa China, India, Russia, Germany ug daghang uban pang mga nasud, tungod kay adunay daghan nga nahitabo bisan asa karon.

Alexey: Apan, tingali, adunay pipila ka negatibo nga mga aspeto sa ingon nga internasyonalisasyon?

Michael: Moingon ko nga ang tanang negatibong aspeto nalangkit dili sa teknolohiya, kondili sa politika. Kaniadto, ang nag-unang problema mao ang kamatuoran nga ang US nangawat sa labing maalamon ug labing talento nga mga tawo gikan sa mga nasud sa tibuuk kalibutan. Ug karon ang panguna nga problema mao ang mga dula sa politika tali sa lainlaing mga nasud sa palibot sa mga visa ug imigrasyon.

Alexey: Kana mao, mga babag ug mga butang nga ingon niana. Klaro na.

Vladimir: Sa personal, interesado ko sa unsa nga pamaagi ang imong himoon sa pagtudlo og bag-ong subject sa mga estudyante. Adunay lainlaing mga kapilian: mahimo nimong sulayan una sa tanan aron madasig sila sa pagsulay sa usa ka butang nga bag-o, o mahimo nimong hatagan dugang nga pagtagad ang mga detalye kung giunsa ang usa ka teknolohiya nga nagtrabaho. Unsa imong gusto?

Epektibo nga trabaho uban sa mga estudyante

Alexey: Ug unsaon pagpangita sa makadaot nga balanse tali sa una ug ikaduha?

Michael: Ang problema mao nga ang mga klase dili kanunay moadto sa paagi nga akong gusto. Kasagaran akong hatagan daan ang mga estudyante sa pagbasa sa materyal aron ilang matun-an kini, masabtan kini kutob sa ilang mahimo, ug maghimo mga pangutana bahin sa mga bahin nga dili nila masabtan. Dayon sa klase mahimo kang mag-focus sa pinakalisud nga mga higayon ug magdungan sa pagsuhid niini. Mao ni ang pinakagusto nakong pagtudlo sa mga klase. Apan tungod sa kabug-at nga naa karon sa mga estudyante, dili ako kanunay makasiguro nga sila nangandam daan. Ingon usa ka sangputanan, kinahanglan nimo nga igugol ang daghang oras sa kinatibuk-ang pagsaysay pag-usab sa materyal kaysa imong gusto. Bisan pa niini, naningkamot ko nga magpabiling interactive ang among mga klase. Kung dili, mas dali ang pagrekord sa usa ka video sa higayon nga matan-aw na sa mga estudyante sa balay. Ang punto sa live nga mga klase mao ang interaksyon sa tawo. Sa klase, mas gusto nako nga mogamit og chalk ug pisara kay sa mga slide, gawas sa pipila ka mga kaso kung ang usa ka diagram komplikado kaayo nga mahulagway sa pisara. Salamat niini, dili ko kinahanglan nga magpabilin sa usa ka estrikto nga plano sa leksyon. Sanglit walay estrikto nga han-ay sa paghatag sa materyal, kini nagtugot kanako sa pagpahaom niini sa mamiminaw depende sa mga pangutana nga akong nadawat. Sa kinatibuk-an, naningkamot ko sa paghimo sa mga klase nga interactive kutob sa mahimo, aron ang materyal nga akong gipresentar nagdepende sa mga pangutana nga gipangutana kanako.

Vladimir: Nindot kaayo. Sa akong kasinatian, lisod kaayo ang mga tigpaminaw nga mangutana. Bisag mangutana ka daan para mangutana bisag unsa ka tanga o kabuotan, hilom ra gihapon. Giunsa nimo pag-atubang niini?

Michael: Mokatawa ka, pero kung maghilum ka ug dugay, sa madugay o sa madali ang tanan mahimong dili komportable ug adunay mangutana. O mahimo ka mangutana og usa ka yano nga teknikal nga pangutana nga adunay oo o dili nga tubag aron mahibal-an kung nasabtan ba sa mga tawo ang gisulti. Pananglitan, aduna bay lumba sa datos sa pananglitan sa ibabaw? Kinsay nagtuo? Kinsa ang naghunahuna nga dili? Kinsa ang dili makasabut sa bisan unsa, tungod kay sa kinatibuk-an katunga lamang sa mga kamot ang mipataas?

Vitali: Ug kung sayop ang imong tubag, gipapahawa ka sa klase :)

Michael: Kung wala ka nakatubag bisan unsa, nan kinahanglan ka nga mangutana. Kinahanglan nakong masabtan kung unsa gyud ang kinahanglan mahibal-an sa estudyante aron matubag ang pangutana nga akong gipangutana. Kinahanglan ko sila nga motabang kanako sa pagtabang kanila. Andam ko nga mopahiangay kanila aron masabtan nila ang problema. Pero kung wala ko kabalo unsay naa sa ilang ulo, di nako kaya. Ug kung dili nimo hatagan ang mga estudyante og kalinaw sa dugay nga panahon, usahay sa katapusan mangutana sila sa husto nga mga pangutana, nga mao, ang mga nagtugot kanako nga makita kung unsa gyud ang nahitabo sa mga ulo sa mga estudyante. 

Alexey: Kini ba nga mga pangutana usahay modala ngadto sa mga ideya nga ikaw mismo wala makahunahuna kaniadto? Unexpected ba sila? Gitugotan ka ba nila sa pagtan-aw sa usa ka problema sa usa ka bag-ong kahayag?

Michael: Adunay mga pangutana nga nagbukas sa bag-ong paagi sa pagpresentar sa materyal. Kanunay adunay mga pangutana nga mosangput sa makapaikag nga mga problema nga wala nako plano nga hisgutan. Ang mga estudyante kanunay nga nagsulti kanako nga ako adunay kalagmitan nga mogawas sa hilisgutan kung kini mahitabo. Ug, sumala sa kanila, sa kasagaran kini mao ang labing makapaikag nga bahin sa leksyon. Talagsa ra, pipila lang ka higayon, ang mga estudyante nangutana nga nag-aghat sa usa ka bag-ong direksyon sa panukiduki ug nahimong usa ka artikulo. Kini mahitabo mas kanunay sa mga panag-istoryahanay uban sa mga estudyante kay sa panahon sa mga klase, apan usahay kini mahitabo sa panahon sa mga klase. 

Alexey: Mao nga gipangutana ka sa mga estudyante sa basehan nga posible nga mag-publish usa ka artikulo?

Michael: Oo. 

Vitali: Unsa ka sagad nimo kini nga mga panag-istoryahanay sa mga estudyante? Kanus-a sila gusto nga makakat-on og labaw pa kay sa unsay nahisgutan sa panahon sa leksyon?

Michael: Uban sa akong graduate nga mga estudyante - sa tanang panahon. Duna koy mga 5 o 6 kanila, ug kanunay kaming maghisgot sa usa ka butang uban kanila. Ug ang mga panag-istoryahanay nga ingon niini sa mga estudyante nga yano nga nagtambong sa akong mga klase dili kaayo komon. Bisan kung gusto ko nga kini mahitabo kanunay. Nagduda ko nga nahadlok lang sila nga moanha sa faculty sa oras sa opisina. Matag semestre, ang pipila ka mga estudyante nakahimo sa pagbuntog niini nga sikolohikal nga babag, ug kini kanunay nga makapaikag nga makigsulti kanila pagkahuman sa klase. Tinuod, kung ang tanan nga mga estudyante ingon ka maisog, wala gyud ako igong oras. Busa tingali ang tanan nagtrabaho ingon nga kini kinahanglan. 

Vitali: Giunsa nimo pagpangita ang oras sa pagpakigsulti sa mga estudyante? Sa akong nahibal-an, ang mga magtutudlo sa USA adunay daghang trabaho - pag-apply alang sa mga grants ug uban pa. 

Michael: Sa tinuod lang, ang pagtrabaho kauban ang mga estudyante mao ang aspeto sa akong trabaho nga labing ganahan nako. Busa aduna akoy igong kadasig niini. Kadaghanan sa oras nga akong gigugol sa akong opisina gigugol sa mga miting sa tanan nga mga matang. Summer na karon, mao nga dili kaayo busy ang akong iskedyul, apan sa school year, kada adlaw gikan sa 9 hangtod 17 naa nako ang tanan. Trabaho sa panukiduki, pagribyu, paghatag - alang sa tanan adunay mga gabii ug katapusan sa semana. 

Sa unsa nga paagi sa pagpadayon sa pag-andam sa bag-ong mga kurso ug mga libro.

Alexey: Nagpadayon ka ba sa pagtudlo sa bisan unsang kurso nga dugay na nimong gitudlo? Usa ka butang sama sa usa ka pasiuna sa Computer Science.

Michael: Ang unang butang nga naa sa hunahuna dinhi mao ang kurso sa programming language. 

Alexey: Unsa ang kalainan sa karon nga bersyon niini nga kurso gikan sa 10, 20, 30 ka tuig ang milabay? Tingali ang mas makapaikag dinhi dili ang mga detalye sa usa ka partikular nga kurso, apan ang kinatibuk-ang uso.

Michael: Ang akong kurso sa programming language medyo talagsaon sa panahon nga akong gibuhat kini. Gisugdan nako kini pagbasa sa ulahing bahin sa dekada 1980, gipuli ang akong kauban, si Doug Baldwin (Doug Baldwin). Ang hilisgutan sa kurso kay tangentially nga may kalabutan sa akong espesyalidad, apan sa iyang pagbiya, ako ang pinakamaayong kandidato sa pagtudlo sa kurso. Dili ko ganahan sa bisan unsang mga libro nga naglungtad niadtong panahona, mao nga ako mismo ang nagsulat sa libro alang niini nga kurso. (Mubo nga sulat sa editor: naghisgot kami bahin sa libro "Programming Language Pragmatics") Gigamit na kini sa kapin sa 200 ka unibersidad sa tibuok kalibotan. Ang akong pamaagi dili kasagaran tungod kay kini tinuyo nga nagsagol sa mga problema sa disenyo ug pagpatuman sa pinulongan, ug naghatag ug dakong pagtagad sa interaksyon tali niini nga mga aspeto sa tanang posibleng mga dapit. Ang sukaranan nga pamaagi nagpabilin nga wala mausab, ingon nga adunay daghang mga batakang konsepto: abstraction, namespaces, modularity, type. Apan ang hugpong sa mga pinulongan nga gipakita niini nga mga konsepto bug-os nga nausab. Sa una nga paghimo sa kurso, adunay daghang mga pananglitan sa Pascal, apan karon daghan sa akong mga estudyante wala pa gani makadungog niini nga pinulongan. Apan nahibal-an nila ang Swift, Go, Rust, mao nga kinahanglan nakong hisgutan ang mga pinulongan nga gigamit karon. Usab, ang mga estudyante karon batid na kaayo sa scripting nga mga pinulongan, apan sa dihang nagsugod ako sa pagtudlo niini nga kurso, kini mahitungod sa gihugpong nga mga pinulongan. Karon kinahanglan namon ang daghang materyal bahin sa Python, Ruby ug bisan ang Perl, tungod kay mao kini ang gisulat nga kodigo karong mga panahona, ug adunay daghang makapaikag nga mga butang nga nahitabo sa kini nga mga lengguwahe, lakip ang natad sa laraw sa sinultian. 

Vitali: Unya ang akong sunod nga pangutana kay may kalabotan sa nauna. Unsaon sa pagpadayon niini nga dapit? Nagduda ko nga ang pag-update sa usa ka kurso nga sama niini nanginahanglan daghang trabaho - kinahanglan nimo nga masabtan ang bag-ong mga sinultian, sabton ang panguna nga mga ideya. Giunsa nimo pagbuhat kini?

Michael: Dili ko makapanghambog nga kanunay kong molampos 100%. Apan kadaghanan sa mga panahon gibuhat ra nako kung unsa ang gibuhat sa uban - pagbasa sa Internet. Kung gusto nako masabtan ang Rust, i-Google ko kini, adto sa panid sa Mozilla ug basaha ang manual nga gi-post didto. Kini mao ang bahin sa mga butang nga mahitabo sa komersyal nga kalamboan. Kung maghisgot kami bahin sa siyensya, kinahanglan nimo nga sundon ang mga taho sa mga nag-unang komperensya. 

Link tali sa negosyo ug akademya

Vitali: Atong hisgotan ang koneksyon tali sa negosyo ug siyentipikong panukiduki. Sa imong lista sa mga buhat, nakit-an nako ang daghang mga artikulo bahin sa panagsama sa cache. Nakasabut ko nga ang mga algorithm sa pagkamakanunayon sa cache dili lig-on sa panahon nga kini gimantala? O dili igo nga kaylap. Unsa ka komon ang imong mga ideya sa praktis?

Michael: Dili ko sigurado kung unsang mga publikasyon ang imong gihisgutan. Daghan na kog nabuhat sa akong mga estudyante nga si Bill Bolosky (William Bolosky) ug Leonidas Kontotanassis (Leonidas Kontothanassis) sa sayong bahin sa 1990s sa pagdumala sa memorya sa mga makina sa Neumann. Niadtong panahona, ang negosyo wala pa makasabut kon unsaon paghimo sa usa ka sistema sa multiprocessor sa hustong paagi: takus ba ang paghimo og suporta alang sa pag-access sa hilit nga panumduman sa lebel sa hardware, angayan ba nga ipanghatag ang memorya, posible ba nga i-load ang cache gikan sa hilit nga memorya, o gikinahanglan ba nga ibalhin ang mga panid sa operating room? Si Bill ug Leonidas parehong nagtrabaho sa kini nga lugar ug nagsuhid sa mga pamaagi nga wala’y layo nga pagkarga sa cache. Dili kini direkta nga may kalabutan sa cache coherence, apan nagtrabaho gihapon kini sa pagdumala sa memorya sa NUMA, ug pagkahuman ang mga modernong pamaagi sa pagbutang sa panid sa modernong mga operating system mitubo gikan niini. Sa kinatibuk-an, si Bill ug Leonidas naghimo sa importante nga trabaho, bisan tuod dili ang labing impluwensyal niini nga dapit - adunay daghan pang mga tawo nga nagtrabaho sa samang butang niadtong panahona. Sa ulahi, nagtrabaho ko sa usa ka hilisgutan nga may kalabutan sa cache coherence sa konteksto sa hardware transactional memory. Ang grupo nga akong gitrabahoan sa kini nga problema nakadawat daghang mga patente. Adunay pipila ka makapaikag nga mga ideya sa luyo niini, apan sa akong hunahuna dili kini matapos nga ipatuman sa praktis. Usa ka paagi o lain, lisud alang kanako ang paghukom sa ilang kita. 

Alexey: Niining bahina, usa ka mas personal nga pangutana: unsa ka importante kanimo nga ang imong mga ideya ipatuman? O wala ka maghunahuna niini?

Michael: Ganahan kong mangutana niini nga pangutana sa mga interbyu sa ubang mga tawo, mga aplikante o mga kandidato nga gustong moapil sa faculty. Sa akong hunahuna wala'y husto nga tubag niini nga pangutana. Ang mga tawo nga nagbuhat og mga cool nga mga butang mahimong adunay lahi kaayo nga mga motibo. Nadani ako sa mga problema tungod kay ako mismo nakakaplag niini nga makapaikag, dili tungod sa ilang praktikal nga mga benepisyo. Apan sa laing bahin, kung ang pipila ka makapaikag nga butang nakit-an pa nga aplikasyon, ganahan kaayo ko niini. Busa dili kini sayon ​​dinhi. Apan sa sinugdanan sa akong trabaho, nadasig gihapon ko dili sa ideya sa usa ka katapusan nga paggamit sa kalibutan, kondili sa panag-uyon sa ideya ug sa tinguha sa pagsuhid niini ug tan-awon kung unsa ang moabut niini. Kung sa katapusan naghatag kini praktikal nga mga sangputanan, maayo. 

Alexey: Tungod sa imong edukasyon ug kasinatian, ikaw mas makahimo kay sa kadaghanan sa paghukom sa bili sa mga ideya sa ubang mga tawo. Mahimo nimong itandi kini ug mahibal-an kung unsa ang mas maayo kung diin. Sigurado ako nga adunay ka opinyon bahin sa mga butang nga gigamit karon sa praktis sa dagkong mga tiggama sama sa Intel. Gikan sa imong panglantaw, unsa ka husto ang kurso nga gikuha sa kini nga mga kompanya?

Michael: Ang praktis kanunay nga nagtuyok sa kung unsa ang mahimong malampuson sa komersyo, nga mao, paghimo og ganansya, ug mas maayo nga mangutana ka sa uban bahin niana. Ang akong trabaho kasagarang resulta sa mga publikasyon, ug sa natad sa mga operating system sila gi-evaluate base sa performance indicators: speed, energy consumption, code size. Apan alang kanako kanunay nga kini nga mga empirikal nga mga resulta gidugang sa mga artikulo lamang aron kini mamantala, ug ang tinuod nga motibo sa mga tawo alang sa trabaho kay aesthetic. Ang mga tigdukiduki nagtimbang-timbang sa mga solusyon gikan sa usa ka artistikong panglantaw, sila nagpakabana kon unsa ka elegante ang mga ideya, ug sila naningkamot sa paghimo sa usa ka butang nga mas maayo kay sa kasamtangan nga mga pamaagi. Ang mga tigdukiduki gimaneho sa personal, suhetibo, aesthetic nga mga motibo. Apan dili ka makasulat bahin niini sa artikulo mismo; kini nga mga butang dili mga argumento alang sa komite sa programa. Maayo na lang, ang mga elegante nga solusyon kasagaran usab paspas ug barato. Usa ka dosena sa akong mga kauban ug ako naghisgot niini nga hilisgutan mga 15 ka tuig na ang milabay ug mitapos sa pagsulat sa usa ka artikulo mahitungod niini. Sa akong hunahuna makit-an pa nimo kini karon, kini gitawag "Unsaon pagtimbang-timbang sa panukiduki sa sistema" o usa ka butang nga sama niana, kini adunay labaw pa sa usa ka dosena nga mga awtor. Kini ra ang artikulo diin kauban ko ang tagsulat Sasha Fedorova, busa kon pangitaon nimo ang iyang ngalan sa akong listahan sa mga publikasyon, imong makita ang imong gikinahanglan. Naghisgot kini bahin sa pagtimbang-timbang sa panukiduki sa mga sistema ug kung unsa ka hinungdanon ang kaanyag. 

Alexey: Busa adunay kalainan tali sa sumbanan sa giisip nga maayo sa siyensya ug sa negosyo. Gisusi sa syensya ang pasundayag, pagkonsumo sa kuryente, TDP, kadali sa pagpatuman, ug daghan pa. Aduna ka bay oportunidad sa pagpahigayon niini nga matang sa panukiduki sa unibersidad? Aduna ka bay laboratoryo nga adunay lain-laing mga makina ug lain-laing mga arkitektura diin mahimo kang magpahigayon og mga eksperimento?

Michael: Oo, ang among departamento adunay daghang lainlaing makapaikag nga mga makina. Kasagaran sila gamay, kami adunay gamay nga kumpol ug daghang mga sistema sa multiprocessor nga adunay lainlaing mga accelerator. Dugang pa, ang kampus adunay usa ka dako nga sentro sa kompyuter nga nagserbisyo sa mga siyentipiko gikan sa daghang dosena nga lainlaing mga disiplina. Kini adunay mga usa ka libo nga mga node ug kawhaan ka libo nga mga core, tanan sa Linux. Kung adunay panginahanglan, mahimo ka kanunay nga makapalit pipila ka AWS. Mao nga wala kami hinungdanon nga mga pagdili sa hardware. 

Alexey: Unsa ang nahitabo katloan ka tuig ang milabay? Naa bay mga problema niadto?

Michael: Lahi man gud noon. Sa tunga-tunga sa ulahing bahin sa 1980s, ang siyensya giisip nga kulang sa mga kapanguhaan sa pag-compute. Aron masulbad kini nga sitwasyon, ang National Science Foundation (National Science Foundation) naghimo ug usa ka programa sa koordinado nga eksperimento nga panukiduki (Coordinated Experimental Research, CER). Ang misyon sa programa mao ang paghatag imprastraktura sa kompyuter para sa mga departamento sa Computer Science, ug nakab-ot kini nga hinungdanon nga pagbag-o. Uban sa kuwarta nga iyang gihatag, kami sa Unibersidad sa Rochester mipalit ug 1984-knot BBN Butterfly niadtong 128, usa kini ka tuig sa wala pa ako moabot didto. Niadtong panahona kini ang pinakadako nga sistema sa multiprocessor sa kalibutan nga adunay gipaambit nga memorya. Kini adunay 128 ka mga processor, ang matag usa sa lain nga motherboard, ug nag-okupar sa upat ka mga racks. Ang matag processor adunay usa ka megabyte nga panumduman, 128 megabytes sa RAM usa ka dili mahunahuna nga kantidad niadtong panahona. Niini nga makina among gipatuman ang MCS locking sa unang higayon. 

Alexey: Busa, kung nasabtan ko ikaw sa husto, nan sa pagkakaron ang problema sa hardware nasulbad na? 

Michael: Sa kinatibuk-an, oo. Adunay pipila ka mga pasidaan: una, kung naghimo ka sa arkitektura sa kompyuter sa lebel sa chip, lisud buhaton sa usa ka akademikong palibot tungod kay adunay labi ka maayo nga mga himan alang sa pagbuhat niini sa negosyo. Kung kinahanglan nimo ang bisan unsang butang nga mas gamay sa 10 nanometer, kinahanglan nimo nga i-order kini sa lain. Niini nga dapit mas sayon ​​nga mahimong tigdukiduki sa Intel. Kung nagtrabaho ka sa mga optical nga komunikasyon sa mga chips o sa solid-state nga panumduman, makit-an nimo ang mga teknolohiya sa negosyo nga wala pa sa siyensya, mao nga kinahanglan ka maghimo mga alyansa. Pananglitan, si Stephen Swanson (Steven Swanson) gibuhat ingon nga panag-uban alang sa bag-ong mga teknolohiya sa memorya. Kini nga porma dili kanunay molihok, apan sa pipila ka mga kaso kini mahimong malampuson. Dugang pa, sa siyensya ang pag-uswag sa labing kusgan nga sistema sa kompyuter mas lisud. Ang pinakadako nga supercomputer nga mga proyekto nga karon sa US, Japan ug China tanan naka-focus sa negosyo. 

Praktikal nga pagpatuman sa mga ideya. MCS, MS, CLH, JSR 166, nagtrabaho kauban si Doug Lee ug uban pa.

Vitali: Nahisgotan na nimo kung giunsa nimo pagsugod sa pagtrabaho sa mga algorithm sa pag-synchronize. Adunay ka duha ka sikat kaayo nga mga artikulo bahin sa Pag-block sa MCS ΠΈ Michael-Scott nga pila (MS), nga sa usa ka diwa gipatuman sa Java. (Mubo nga sulat sa editor: tanang publikasyon mahimong tan-awon link). Didto kini nga pag-block gipatuman uban ang pipila ka mga pagbag-o ug kini nahimo CLH lock, ug ang pila gipatuman sumala sa katuyoan. Apan daghang tuig ang milabay tali sa pagmantala sa imong mga artikulo ug sa ilang praktikal nga aplikasyon. 

Alexey: Daw mga 10 ka tuig sa kaso sa pila.

Michael: Sa wala pa kini nga mga bahin nagpakita sa Java standard library?

Vitali: Oo. Unsa ang imong gibuhat aron kini mahitabo? O wala silay nahimo?

Michael: Makasulti ko nimo kung giunsa pagsulod sa MS Queue ang Java 5. Pipila ka tuig sa wala pa kini migawas, nagtrabaho ko sa grupo ni Mark Moyers sa Sun Microsystems sa ilang lab duol sa Boston. Nag-organisar siya og workshop alang sa mga tawo nga iyang nailhan nga nagtrabaho sa makapaikag nga mga problema sa multithreading tungod kay gusto niya nga makit-an ang mga hilisgutan nga mahimo niyang ibaligya sa ilang kompanya. Didto ko unang nakaila ni Doug Lea. Kami ni Doug ug mga 25 ka tawo gikan sa Sun nag-uban nga naghisgot sa presentasyon ni Doug sa JSR 166, nga sa ulahi nahimong java.util.concurrent. Sa dalan, si Doug miingon nga gusto niyang gamiton ang MS queue, apan alang niini nagkinahanglan siya og counter alang sa gidaghanon sa mga elemento sa queue alang sa interface. Sa ato pa, gihimo unta kini sa lahi nga pamaagi, atomic, tukma ug paspas. Gisugyot nako nga idugang lang ang mga serial number sa mga node, pagkuha sa numero sa una nga node ug ang katapusan ug pag-ubos sa usa gikan sa lain. Si Doug mikamot sa iyang ulo, miingon β€œnganong dili,” ug mitapos sa pagbuhat niana. Gihisgutan namon ang pagpatuman niini nga pamaagi sa librarya, apan si Doug mismo ang naghimo sa kadaghanan sa trabaho. Ingon nga resulta, nakahimo siya sa pagtukod og maayo kaayo nga suporta sa multithreading sa Java. 

Alexey: Busa, kon ako makasabut sa husto nga paagi, ang .size() nga pamaagi kinahanglan nga kabahin sa standard queue interface, ug kini kinahanglan nga adunay usa ka algorithmic komplikado sa O(1)?

Michael: Oo, ug dugang niini, gikinahanglan ang usa ka bulag nga counter.

Alexey: Tungod kay kung imong tawgon ang .size() nga pamaagi sa Java, ang resulta gilauman nga magamit dayon ug dili base sa aktuwal nga gidak-on sa koleksyon. Nakita nako, salamat.

Michael: Pipila ka tuig ang milabay nagtrabaho ko sa duha ka mga istruktura sa datos uban sa akong estudyante nga si Bill Scherer - sa pagkatinuod, kini ang akong hisgutan report sa Hydra. Si Doug mianhi kanamo ug miingon nga magamit niya kini sa Java Executor Framework. Kauban ni Bill, nagmugna sila og duha ka implementasyon, ang gitawag nga patas ug dili patas nga pila. Gitambagan ko sila bahin niini nga proyekto, bisan kung wala ako apil sa pagsulat sa tinuud nga code. Ingon usa ka sangputanan, ang katulin sa mga executor miuswag pag-ayo. 

Vladimir: Nakasugat ka ba og sayop nga pagpatuman sa imong mga algorithm o mga hangyo sa pagdugang og bag-ong mga feature? Sa kinatibuk-an, ang praktis kinahanglan nga motakdo sa teorya, apan sa kasagaran kini magkalahi. Ibutang ta nga nagsulat ka usa ka algorithm, ug sa papel kini molihok, apan ang mga tawo nga nalambigit sa pagpatuman nagsugod sa pagpangutana kanimo alang sa dugang nga mga bahin o usa ka matang sa pag-tweaking sa algorithm. Nakasinati ka na ba sa ingon nga mga sitwasyon?

Michael: Ang bugtong pananglitan diin ang usa ka tawo mianhi kanako ug nangutana "unsaon sa pagpatuman niini" mao ang pangutana ni Doug, nga akong nahisgotan na. Apan adunay pipila ka mga kaso diin ang makapaikag nga mga pagbag-o gihimo aron mohaum sa praktikal nga mga panginahanglan. Pananglitan, ang K42 team sa IBM nag-convert sa MCS lock ug naghimo niini nga usa ka standard interface aron dili na kinahanglan nga ipasa ang queue node pabalik-balik sa pagkuha ug pagpagawas sa mga rutina. Salamat sa kini nga sumbanan nga interface, usa ka ideya nga matahum sa teorya nagsugod sa pagtrabaho sa praktis. Katingad-an nga wala gyud nila gipatik ang usa ka artikulo bahin niini, ug bisan kung nakadawat sila usa ka patente, gibiyaan nila kini sa ulahi. Nindot ang ideya, ug naningkamot ko nga hisgotan kini kung mahimo. 

Adunay uban nga mga kaso diin ang mga tawo nakahimo og mga kalamboan sa mga algorithm nga akong gipatik. Pananglitan, ang MS queue adunay duha ka lakang nga mekanismo sa pag-install, nga nagpasabut nga adunay duha ka CAS sa kritikal nga agianan sa pila. Sa daan nga mga sakyanan, ang CAS mahal kaayo. Ang Intel ug uban pang mga tiggama maayo kaayo nga na-optimize kini bag-o lang, apan sa usa ka higayon kini mga 30-cycle nga mga panudlo, mao nga adunay labaw sa usa sa kritikal nga agianan dili gusto. Ingon usa ka sangputanan, usa ka lahi nga pila ang naugmad nga parehas sa pila sa MS, apan adunay usa ra ka atomic nga operasyon sa kritikal nga agianan. Nakab-ot kini tungod sa kamatuoran nga sa usa ka piho nga yugto sa panahon ang operasyon mahimo’g makuha ang O (n) nga oras, kaysa O (1). Dili kini posible, apan posible. Nahitabo kini tungod sa kamatuoran nga sa pipila ka mga higayon ang algorithm miagi sa pila gikan sa sinugdanan hangtod sa karon nga posisyon sa kini nga pila. Sa kinatibuk-an, ang algorithm nahimo nga malampuson kaayo. Sa akong nahibal-an, kini dili kaayo kaylap nga gigamit, bahin tungod kay ang mga operasyon sa atomic nanginahanglan labi ka gamay nga mga kapanguhaan kaysa kaniadto. Apan maayo ang ideya. Ganahan sab ko sa buhat ni Dave Dice gikan sa Oracle. Praktikal kaayo ang tanan niyang gibuhat ug maayo kaayo ang iyang paggamit ug puthaw. Siya adunay usa ka kamot sa kadaghanan sa NUMA-aware synchronization algorithms ug multi-threaded data structures. 

Vladimir: Kung nagsulat ka og mga algorithm o nagtudlo sa mga estudyante, ang resulta sa imong trabaho dili dayon makita. Ang komunidad nagkinahanglan ug panahon aron mahimong pamilyar, ingnon ta, usa ka bag-ong artikulo. Ang bag-ong algorithm wala dayon makit-an ang aplikasyon. 

Michael: Kini layo sa dihadiha tin-aw kon ang artikulo mahimong mahinungdanon o dili. Sa akong hunahuna kini makapaikag nga maghimo usa ka pagtuon sa mga papel nga nakadaog mga awards sa mga komperensya. Sa ato pa, tan-awa ang mga artikulo nga giisip sa mga tawo sa mga komite sa programa nga labing maayo. Kinahanglan nimo nga sulayan ang pagkalkulo pinaagi sa gidaghanon sa mga link ug ang epekto sa negosyo kung unsa ka impluwensyado kini nga mga artikulo sa 10, 20, 25 ka tuig. Nagduda ko nga adunay lig-on nga correlation tali sa duha. Dili kini zero, apan lagmit nga mas huyang kini kaysa atong gusto. Daghang mga ideya ang nagpabilin nga wala maangkon sa dugay nga panahon sa wala pa kini kaylap. Pananglitan, atong kuhaon ang transactional memory. Kapin sa 10 ka tuig ang milabay gikan sa panahon nga ang orihinal nga artikulo gimantala hangtod sa panahon nga ang mga tawo nagsugod sa paghimo ug mga makina niini. Ug sa wala pa ang pagpakita niini nga panumduman sa komersyal nga mga produkto - ug ang tanan nga 20. Sulod sa dugay nga panahon walay usa nga nagtagad sa artikulo, ug unya ang gidaghanon sa mga link niini misaka pag-ayo. Lisod ang pagtagna niini daan. Sa laing bahin, usahay ang mga ideya makit-an dayon ang pagpatuman. Pipila ka tuig ang milabay, nagsulat ko og papel kauban si Joe Izraelevitz para sa DISC nga nagsugyot og bag-ong pormal nga kahulugan sa balido alang sa padayon nga mga istruktura sa datos nga mahimong magamit human ang kompyuter nga nagpadagan niini nahagsa. Ganahan ko sa artikulo gikan sa sinugdanan, apan kini nahimong mas popular kay sa akong gidahom. Gigamit kini sa daghang lain-laing mga grupo ug sa kadugayan nahimong sumbanan nga kahulugan sa mga istruktura sa pagpadayon. Nga, siyempre, nindot.

Vladimir: Aduna bay mga teknik nga imong gigamit sa pagtimbang-timbang? Gisulayan ba nimo ang pagtimbang-timbang sa imong mga artikulo ug sa imong mga estudyante? Sa termino kung ang tawo nga imong gitudloan padulong ba sa husto nga direksyon.

Michael: Sama sa uban, mas gihatagan nakog pagtagad ang akong gibuhat karon. Sa makausa pa, sama sa uban, usahay akong susihon ang Google Scholar aron tan-awon kung gisitar ba ang akong nangaging mga papel, apan kana labi pa sa kakuryuso. Kasagaran na-absorb ko sa gibuhat sa akong mga estudyante karon. Kung bahin sa pagtimbang-timbang sa karon nga trabaho, bahin niini ang mga konsiderasyon sa aesthetic, kung unsa ang elegante ug kung unsa ang dili. Ug sa adlaw-adlaw nga lebel, ang bukas nga mga pangutana adunay dako nga papel. Pananglitan, ang usa ka estudyante miduol kanako nga adunay usa ka graph sa pipila ka mga resulta, ug kami naningkamot nga masabtan kung diin gikan ang pipila ka katingad-an nga kinaiya sa graph. Sa kinatibuk-an, sa among trabaho kanunay kaming naningkamot sa pagsabut sa mga butang nga wala pa namo masabti. 

Transaksyonal nga memorya

Vitali: Tingali makahisgot kita og gamay mahitungod sa transactional memory?

Michael: Sa akong hunahuna kini angay nga isulti bisan gamay tungod kay ako nagbutang ug daghang paningkamot niini. Kini usa ka hilisgutan diin ako adunay daghang mga publikasyon kaysa sa uban pa. Apan sa samang higayon, sa katingad-an, ako kanunay nga nagduhaduha mahitungod sa transactional memory. Sa akong hunahuna, artikulo ni Herlihy ug Moss (M. Herlihy, J. E. B. Moss) gimantala una pa sa panahon niini. Sa sayong bahin sa 1990s, ilang gisugyot nga ang transactional memory makatabang sa mga talento nga programmer sa pagtrabaho sa multi-threaded nga mga istruktura sa datos, aron kini nga mga istruktura magamit dayon isip mga librarya sa mga ordinaryong programmer. Sa ato pa, makatabang kini kang Doug Lee sa pagbuhat sa iyang JSR 166. Apan ang transactional memory wala gituyo aron sayon ​​ang multi-threaded programming. Apan mao gyud kini kung giunsa kini nahibal-an sa sayong bahin sa 2000s, sa dihang kini kaylap. Gi-anunsyo kini isip usa ka paagi sa pagsulbad sa problema sa parallel programming. Kini nga pamaagi kanunay nga daw walay paglaum alang kanako. Ang panumduman sa transaksyon makapasayon ​​lamang sa pagsulat sa parallel data structures. Kini, para nako, mao ang iyang nakab-ot. 

Mahitungod sa kalisud sa pagsulat sa multi-threaded code

Alexey: Makapainteres kaayo. Daw adunay usa ka piho nga babag tali sa mga regular nga programmer ug kadtong makasulat sa multi-threaded code. Sa miaging tuig, nakigsulti ako sa daghang mga higayon sa mga tawo nga nagpatuman sa pipila ka algorithmic framework. Pananglitan, uban ni Martin Thomson, ingon man sa mga programmer nga nagtrabaho sa multi-threaded nga mga librarya. (Mubo nga sulat sa editor: Si Martin Thompson usa ka sikat kaayo nga developer, siya misulat Magbalantay ΠΈ Aeron. Ug naa pud siya pagtaho sa among Joker 2015 nga komperensya, pagrekord sa video anaa sa YouTube. Ingon siya giablihan niini nga komperensya keynote recording magamit usab). Ang panguna nga hagit, ingon nila, mao ang paghimo sa mga algorithm nga dali ug dali gamiton. Sa ato pa, naningkamot sila nga mabuntog kini nga babag ug madani ang daghang mga tawo kutob sa mahimo sa kini nga lugar. Unsay imong hunahuna niini?

Michael: Kini mao ang nag-unang problema sa multithreading: sa unsa nga paagi sa pagkab-ot sa taas nga performance nga walay pagdugang sa pagkakomplikado sa sistema. 

Alexey: Tungod kay kung gisulayan nila nga malikayan ang pagkakomplikado, ang algorithm mahimong dili kaayo unibersal.

Michael: Ang yawe dinhi mao ang husto nga pagkadisenyo nga mga abstraction. Para nako kini sa kasagaran ang panguna nga butang alang sa mga sistema sa kompyuter ingon usa ka uma. Gusto ni Butler Lampson nga gamiton kini nga termino, ug gitawag niya kami nga "mga negosyante sa abstraction." Ang yano nga mga teknolohiya wala na karon. Ang mga processor nga among gigamit adunay 10 ka bilyon nga transistor β€” ang kayano dili mahimo. Sa parehas nga oras, ang ISA labi ka yano kaysa sa processor, tungod kay kami nagtrabaho sa dugay nga panahon aron mahatagan kini nga taas nga pasundayag ug medyo yano nga interface. Pero dili man smooth sa iyaha ang tanan. Ang parehas nga problema mao ang mga accelerator nga nagpakita karon sa merkado. Mitungha ang mga pangutana - unsaon paghimo sa hustong interface para sa GPU, mekanismo sa pag-encrypt, compression, mekanismo sa transcoding, mekanismo sa linear algebra, o bisan sa mas flexible nga FPGA. Giunsa paghimo ang usa ka interface nga naghimo sa himan nga dali gamiton ug nagtago sa pagkakomplikado? Dili kini makapawala niini, apan itago kini gikan sa usa ka yano nga programmer. 

Alexey: Sa akong pagsabot niini, aduna pa kitay babag sa pagsabot sa mga abstraction. Atong kuhaon ang modelo sa panumduman; sa atong yugto sa pag-uswag sa syensya ug teknolohiya, kini usa sa mga nag-unang abstraction. Salamat niini, ang tanan nga mga programmer gibahin sa duha ka grupo: ang mas dako nga bahin mao ang mga wala makasabut niini, ug ang gamay nga bahin mao ang mga nakasabut, o naghunahuna nga sila nakasabut. 

Michael: Maayo kana nga pangutana - aduna ba kanato ang nakasabut gayud sa modelo sa panumduman?

Vitali: Ilabi na sa C++.

Michael: Pakigsulti kang Hans Boehm usahay. Usa siya sa labing maalamon nga mga tawo nga akong nahibal-an, usa ka nanguna nga eksperto sa mga modelo sa memorya. Sultihan ka niya dayon nga adunay daghang wala niya masabti. Apan kung mobalik kita sa isyu sa abstraction, nan, sa akong opinyon, ang labing hinungdanon nga ideya sa natad sa mga modelo sa memorya sa miaging 30 ka tuig gipahayag. sa disertasyon ni Sarita Adve. (Nota sa editor: ang usa ka kompleto nga listahan sa mga publikasyon anaa link).

Alexey: Ang akong pangutana mao: kini ba nga babag nagagikan sa kinaiyahan sa konsepto? 

Michael: Dili. Nakahinapos si Sarita nga sa husto nga pamaagi, malampuson nimo nga matago ang tanan nga pagkakomplikado, makakuha og taas nga pasundayag ug hatagan ang programmer usa ka yano nga API. Ug kung sundon nimo kini nga API, mahimo nimong makab-ot ang makanunayon nga pagkamakanunayon. Sa akong hunahuna kini ang husto nga modelo. Pagsulat og code nga walay mga lumba sa datos ug pagkuha og sunod-sunod nga pagkamakanunayon. Siyempre, aron makunhuran ang posibilidad sa lumba, gikinahanglan ang mga espesyal nga himan, apan lain kana nga butang. 

Vladimir: Aduna bay mga panahon sa imong karera nga ang usa ka problema nga daw nasulbad kalit nga nahimong usa ka katalagman, o nahimo nga kini nga problema dili masulbad? Pananglitan, sa teorya mahimo nimong i-factor ang bisan unsang numero o mahibal-an kung ang bisan unsang numero ang panguna. Apan sa praktis kini mahimong lisud buhaton; uban sa kasamtangan nga hardware lisud ang pag-factor sa mga numero. May susama ba nga nahitabo kanimo?

Michael: Wala dayon ko makahinumdom sa bisan unsa nga sama niana. Adunay mga panahon nga ingon og alang kanako wala nay mahimo sa usa ka lugar, apan adunay bag-o ug makapaikag nga nahitabo didto. Pananglitan, naghunahuna ko nga ang lugar sa walay kutub nga pagpila nakaabot na sa pagkahamtong. Pagkahuman sa daghang mga pag-ayo sa pila sa MNS, wala nay nahitabo. Ug dayon nag-imbento si Morrison (Adam Morrison) ug Afek (Yehuda Afek). LCRQ nga pila. Nahimong tin-aw nga ang usa ka walay kinutuban nga multi-threaded nga pila posible, diin kadaghanan sa mga oras adunay usa lamang ka instruksiyon sa pagkuha ug pagdugang sa kritikal nga dalan. Ug kini nagpaposible nga makab-ot ang usa ka han-ay sa kadako nga mas maayo nga pasundayag. Dili kay wala ta kahibalo nga ang pag-fetch-and-increment kay mapuslanon kaayo. Gisulat ni Eric Freudenthal ang bahin niini sa iyang trabaho sa Ultracomputer kauban si Allan Gottlieb kaniadtong ulahing bahin sa 1980, apan kini bahin sa limitado nga mga pila. Si Morrison ug Afek nakahimo sa paggamit sa fetch-and-increment sa usa ka walay kinutuban nga pila.

Bag-ong mga arkitektura. Duol na ba ang kadaugan sa transactional memory?

Vladimir: Nangita ka ba ug bag-ong mga solusyon sa arkitektura nga mahimong mapuslanon sa mga algorithm? 

Michael: Siyempre, adunay daghang mga butang nga gusto nakong makita nga ipatuman. 

Vladimir: Unsa nga matang, pananglitan?

Michael: Una sa tanan, pipila ka yano nga mga extension sa among hardware-level transactional memory sa Intel ug IBM processors. Sa partikular, gusto nako nga ang dili transaksyon nga load ug tindahan nga bag-o lang nahitabo nga magamit dayon sulod sa mga transaksyon. Diha-diha dayon sila modala ngadto sa mga galong sa nahitabo-sa wala pa han-ay, mao nga sila mahimong lisud. Apan kung magpadayon ka sa mga layer sa abstraction, adunay daghang makapaikag nga mga butang nga mahimo nimo gawas sa transaksyon samtang kini nahitabo. Wala ko kahibalo kung unsa ka lisud kini nga ipatuman, apan kini mapuslanon kaayo. 

Ang laing mapuslanon nga butang mao ang pag-load sa cache gikan sa hilit nga memorya. Sa akong hunahuna sa madugay o sa madali mahuman na kini. Kini nga teknolohiya magtugot sa paghimo sa mga sistema nga adunay disaggregated memory. Mahimong posible nga tipigan, ingnon ta, ang 100 ka terabytes sa nonvolatile nga panumduman sa usa ka rack, ug ang operating system mismo ang dinamikong magdesisyon kung unsang mga seksyon sa panumduman ang kinahanglan nga katumbas sa pisikal nga address space sa mga processor. Kini labi ka mapuslanon alang sa cloud computing, tungod kay kini magtugot sa daghang mga memorya nga mahatag sa mga buluhaton nga nanginahanglan niini. Sa akong hunahuna adunay mobuhat niini.

Vitali: Aron mahuman ang paghisgot bahin sa transactional memory, naa koy usa pa ka pangutana bahin niini nga hilisgutan. Ang transactional memory ba sa katapusan mopuli sa standard multi-threaded data structures?

Michael: Dili. Ang mga transaksyon usa ka mekanismo sa pangagpas. Sa lebel sa programming kini mga atomic lock, apan sa sulod sila mga pangagpas. Ang ingon nga panagna molihok kung ang kadaghanan sa mga panagna husto. Busa, ang panumduman sa transaksyon maayo nga molihok kung ang mga hilo halos dili makig-uban sa usag usa, ug kinahanglan nimo nga sigurohon nga wala’y mga interaksyon. Apan kung ang usa ka mensahe magsugod sa taliwala sa mga hilo, ang mga transaksyon gamay ra ang gamit. Pasabta ko, naghisgot kami bahin sa kaso kung ang mga transaksyon giputos sa tibuuk nga operasyon sa atomo. Mahimo gihapon sila nga malampuson nga magamit isip mga sangkap alang sa mga istruktura sa datos nga daghang sinulud. Pananglitan, kung kinahanglan nimo ang tulo ka pulong nga CAS, ug kinahanglan nimo nga multithread ang tulo ka gagmay nga mga butang sa tunga-tunga sa usa ka tinuud nga multithreaded nga algorithm nga nagtrabaho sa kawhaan ka mga hilo sa parehas nga oras. Sa kinatibuk-an, ang mga transaksyon mahimong mapuslanon, apan dili nila mawagtang ang panginahanglan sa husto nga pagdesinyo sa multi-threaded nga mga istruktura sa datos. 

Non-volatile memory, Optane DIMM, ultra-paspas nga mga himan.

Vitali: Ang katapusan nga butang nga gusto nakong hisgutan mao ang hilisgutan sa imong kasamtangan nga panukiduki: non-volatile memory. Unsay atong mapaabot niining dapita sa umaabot nga panahon? Tingali nahibal-an nimo ang bisan unsang epektibo nga pagpatuman nga naglungtad na? 

Michael: Dili ko eksperto sa hardware, nahibal-an ra nako ang akong nabasa sa balita ug kung unsa ang gisulti sa akong mga kauban. Ang tanan nakadungog na nga ang Intel nagbaligya Optane DIMM, nga adunay mga 3 ka beses ang read latency ug 10 ka beses ang write latency kay sa dinamikong RAM. Sa dili madugay kini magamit sa daghang mga bersyon sa volume. Kataw-anan nga maghunahuna nga mahimo kang adunay usa ka laptop nga adunay daghang terabytes sa byte-addressable RAM. Lagmit nga sa 10 ka tuig magdesisyon kami nga gamiton kini nga bag-ong teknolohiya, tungod kay gigamit namon ang DRAM - dugangi lang ang volume. Apan salamat sa kagawasan sa enerhiya, ang hingpit nga bag-ong mga oportunidad nagbukas alang kanamo. Mahimo natong usbon ang sukaranan sa storage stack aron walay panagbulag tali sa byte-addressable working memory ug block-structured nga padayon nga memorya. Busa, dili na nato kinahanglan nga i-serialize ang tanan nga kinahanglan ibalhin gikan sa usa ka programa nga gipadagan ngadto sa lain ngadto sa block-structured files. Gikan niini kita makakuha og daghang importante nga mga prinsipyo nga makaapekto sa mga operating system, runtime environment, ug distributed data stores. Kini nga lugar makapaikag kaayo nga trabahoan. Sa personal, lisud alang kanako ang pagtag-an kung unsa ang hinungdan niini, apan ang mga problema dinhi labi ka makalingaw. Mahimong adunay mga rebolusyonaryong pagbag-o dinhi, ug kini natural nga nagsunod gikan sa trabaho sa multithreading, tungod kay ang pagbawi sa kapakyasan usa ka proseso nga "multithreading" sunod sa normal nga operasyon sa sistema. 

Ang ikaduha nga panguna nga hilisgutan nga akong gitrabaho karon mao ang pagdumala sa mga ultra-paspas nga mga aparato ug luwas nga pag-access sa mga aparato gikan sa userspace nga adunay sistema nga pagkontrol sa palisiya. Sa bag-ohay nga mga tuig, adunay usa ka uso sa pagbalhin sa pag-access sa device ngadto sa userspace. Gihimo kini tungod kay ang TCP-IP kernel stack dili molihok sa ibabaw sa usa ka interface sa network nga nanginahanglan usa ka bag-ong pakete matag 5 microseconds; dili kini magpadayon. Busa, ang mga tiggama naghatag direkta nga pag-access sa mga aparato. Apan kini nagpasabot nga ang operating system mawad-an sa kontrol sa proseso ug kini dili makahatag sa husto nga access sa device alang sa kompetisyon nga mga aplikasyon. Ang among grupo sa panukiduki nagtuo nga kini nga kakulangan mahimong malikayan. Adunay kami usa ka artikulo bahin niini sa USENIX ATC karong bulana. Nalambigit kini sa pagtrabaho sa pagpadayon, tungod kay ang dugay na nga byte-addressable nga padayon nga memorya, sa esensya, usa ka himan nga adunay ultra-paspas nga I/O nga kinahanglang ma-access sa userspace. Kini nga panukiduki nagpaposible sa mga bag-ong pamaagi sa microkernels, exokernels, ug uban pang tradisyonal nga pagsulay aron luwas nga mabalhin ang gamit gikan sa OS kernel ngadto sa userspace. 

Vladimir: Ang byte-addressable memory dako, apan adunay pisikal nga limitasyon - ang gikusgon sa kahayag. Kini nagpasabut nga adunay dili kalikayan nga paglangan kung makig-uban sa aparato. 

Michael: Sakto gyud.

Vladimir: Aduna bay igong kapasidad sa pagsagubang sa bag-ong mga karga?

Michael: Nindot ni nga pangutana, pero maglisod ko sa pagtubag. Ang ideya sa pagproseso sa panumduman dugay na nga naglungtad, kini makapaikag kaayo, apan labi ka komplikado. Wala pa ako nagtrabaho sa kini nga lugar, apan maayo kung adunay mga nadiskobrehan didto. Nahadlok ko nga wala na koy ikadugang. 

Vladimir: Adunay usa pa ka problema. Ang bag-o, labi ka dako nga kantidad sa RAM imposible nga mahiangay sa CPU. Busa, tungod sa pisikal nga mga limitasyon, kini nga RAM kinahanglan nga ilain. 

Michael: Kini tanan nagdepende sa gidaghanon sa mga depekto sa paghimo sa integrated circuits. Kung posible ang paghimo sa mga semiconductor wafer nga hingpit nga wala’y mga depekto, nan posible nga maghimo usa ka tibuuk nga microcircuit gikan niini. Apan karon wala kami kahibalo kung giunsa paghimo ang mga microcircuits nga mas dako kaysa mga selyo sa selyo. 

Vladimir: Apan naghisgot gihapon kami bahin sa dagkong mga gidak-on, mga sentimetro. Kini dili kalikayan nga adunay epekto sa latency. 

Michael: Oo. Wala kay mahimo bahin sa katulin sa kahayag. 

Vladimir: Ikasubo. 

Ang sunod nga dako nga uso. Doble nga istruktura sa datos. Hydra.

Vitali: Sa akong nasabtan, dali ka nga nakakuha og bag-ong mga uso. Usa ka sa una nga nagtrabaho sa transactional memory, ug usa sa una nga nagtrabaho sa non-volatile memory. Unsa sa imong hunahuna ang sunod nga dagkong uso? O tingali kini usa ka sekreto?

Michael: Sa tinuod lang, wala ko kahibalo. Hinaut nga makamatikod ako kung adunay bag-o nga moabut. Dili ako igo nga swerte sa pag-imbento sa bisan unsang bag-ong natad sa akong kaugalingon, apan ako adunay pipila nga swerte ug nakahimo sa pagsugod sa pagtrabaho nga sayo sa bag-ong mga natad nga gihimo sa uban. Nanghinaut ko nga mahimo nako kini sa umaabot.

Alexey: Ang katapusang pangutana niini nga interbyu mao ang mahitungod sa imong performance sa Hydra ug sa imong mga kalihokan sa eskwelahan. Kung nasabtan nako sa husto, ang taho sa eskuylahan bahin sa mga algorithm nga wala’y pag-block, ug sa komperensya bahin sa doble nga istruktura sa datos. Makasulti ka ba og pipila ka mga pulong mahitungod niini nga mga taho?

Michael: Sa bahin, natandog na namo kini nga mga hilisgutan uban kanimo niini nga interbyu. Mahitungod kini sa trabaho nga akong gibuhat sa akong estudyante nga si Bill Scherer. Gisulat niya ang usa ka tesis bahin niini, ug si Doug Lee nakatampo usab niini, ug sa kadugayan nahimo kini nga bahin sa mga multi-threaded synchronous queues sa Java library. Atong hunahunaon nga ang istruktura sa datos gibasa ug gisulat nga wala’y pag-ali, nga mao, ang matag operasyon adunay limitado nga gidaghanon sa mga panudlo sa kritikal nga agianan. Kung mosulay ka sa pagtangtang sa datos gikan sa usa ka walay sulod nga sudlanan, o pagsulay sa pagtangtang sa pipila ka mga datos nga wala niini nga sudlanan, gipahibalo dayon ka nga dili kini mahimo. Apan kini nga pamatasan mahimong dili madawat kung ang hilo kinahanglan gyud kini nga datos. Unya ang unang butang nga moabut sa hunahuna mao ang paghimo sa usa ka laang nga kanunay mangutana kon ang gikinahanglan nga data nagpakita. Apan unya adunay pagpanghilabot alang sa tanan. Dugang pa, uban niini nga pamaagi, mahimo ka maghulat 10 minutos, ug unya ang uban nga mga thread moabut, ug kini aksidenteng makadawat sa gikinahanglan nga data una. Ang mga istruktura sa doble nga datos wala gihapon mga kandado, apan gitugotan nila ang mga hilo nga maghulat sa husto. Ang termino nga "doble" nagpasabut nga ang istruktura adunay sulud nga datos o mga hangyo alang sa datos, tawgon nato sila nga anti-data. Mao nga kung sulayan nimo nga makuha ang usa ka butang gikan sa usa ka walay sulod nga sudlanan, usa ka hangyo ang ibutang sa sulud. Karon ang hilo makahulat alang sa usa ka hangyo nga dili makadisturbo sa uban. Dugang pa, ang istruktura sa datos naghatag mga prayoridad sa mga hangyo aron kung madawat, ipasa kini sa husto nga tawo. Ang resulta mao ang usa ka non-locking nga mekanismo nga aduna pa'y pormal nga espesipikasyon ug maayo nga performance sa praktis. 

Alexey: Unsa ang imong gipaabut gikan niini nga istruktura sa datos? Makapauswag ba kini sa pasundayag sa tanan nga kasagarang mga kaso, o mas haum ba kini sa pipila ka mga sitwasyon? 

Michael: Kini mapuslanon kung, una, kinahanglan nimo ang usa ka sudlanan nga wala’y pag-lock, ug, ikaduha, kinahanglan ka maghulat sa usa ka sitwasyon diin kinahanglan nimo nga makuha ang datos gikan sa sudlanan nga wala niini. Sa labing maayo sa akong nahibal-an, ang among balangkas naghatag labing maayo nga pamatasan kung kini nga duha nga mga kondisyon matuman. Busa, sa kini nga mga kaso girekomenda ko ang paggamit niini. Ang panguna nga bentaha sa mga istruktura nga wala’y lock sa datos mao nga malikayan nila ang mga problema sa pasundayag. Ug ang paghulat hinungdanon kaayo sa daghang mga algorithm kung ang data gibalhin gikan sa usa ka hilo ngadto sa lain.

Vitali: Patin-aw nako: maghisgot ka ba bahin sa parehas nga butang sa eskuylahan ug sa komperensya?

Michael: Sa eskwelahan musulti ko sa kinatibuk-an mahitungod sa multi-threaded nga mga istruktura sa datos, uban sa sukaranang mga baruganan nga gilatid sa sinugdanan sa leksyon. Nagtuo ko nga nahibal-an sa mamiminaw kung unsa ang mga hilo ug pamilyar sa mga kandado. Pinasukad sa kini nga sukaranan nga kahibalo, maghisgot ako bahin sa mga istruktura sa datos nga wala’y lock. Maghatag ako usa ka kinatibuk-an nga pagtan-aw sa labing hinungdanon nga mga problema sa kini nga lugar, bahin sa mga hilisgutan sama sa pagdumala sa memorya. Wala ko maghunahuna nga adunay bisan unsa nga mas komplikado kaysa sa MS queue.

Alexey: Nagplano ka ba nga magtudlo bahin sa doble nga istruktura sa datos sa katapusan sa imong klase sa eskuylahan?

Michael: Ako silang hisgotan, apan dili ko mogahin ug daghang panahon kanila. Ang taho sa Hydra ipahinungod kanila. Sakup niini ang proyekto nga sa katapusan nahimo kini sa Java, ingon man ang pagtrabaho kauban si Joe Israelevich aron maghimo usa ka doble nga variant sa pila sa LCRQ, ug paghimo usa ka hapit sa unibersal nga disenyo alang sa doble nga istruktura sa datos.

Alexey: Busa ang lecture sa eskwelahan mahimong girekomendar alang sa mga nagsugod, ug ang lecture sa double data istruktura sa Hydra - alang sa mga tawo nga na sa pipila ka mga kasinatian?

Michael: Tudloi ako kung nasayop ko, apan ang mga mamiminaw sa Hydra magkalainlain, lakip ang daghang mga eksperto sa Java, ug sa kinatibuk-an nga mga tawo nga wala espesipikong nalambigit sa multi-threaded programming. 

Vitali: Oo, tinuod.

Alexey: At least naglaum mi.

Michael: Sa kini nga kaso, mag-atubang ako sa parehas nga problema diin gisugdan namon kini nga interbyu: kung giunsa paghimo ang usa ka taho nga parehas nga dato sa teknikal nga mga detalye ug ma-access sa tanan nga tigpaminaw.

Vitali: Mohatag ba ka ug report sama sa imong paghatag ug lecture? Sa ato pa, pakigsulti sa mamiminaw ug ipahiangay sa sitwasyon?

Michael: Nahadlok ko nga dili kini mahitabo, tungod kay ang report adunay mga slide. Importante ang mga slide kon ang mga tigpaminaw sa sinugdanan mosulti og lain-laing mga pinulongan. Daghang mga tawo ang maglisod sa pagsabot kanako sa English, ilabina kon ako dali kaayong mosulti. Gipili nako kini nga mga hilisgutan tungod kay Peter Kuznetsov mihangyo kanako sa paghisgot mahitungod sa lock-free data structures sa SPTDC School; ug unya nagkinahanglan ko og report alang sa Java user group conference, ug gusto ko nga mopili og butang nga makapainteres ilabina sa Java programmer. Ang labing kadali nga paagi mao ang paghisgot bahin sa mga butang sa librarya sa Java nga naa koy kamot sa usa ka paagi o sa lain. 

Alexey: Nagtuo kami nga ang mga mamiminaw sa Hydra nahibal-an na bahin sa lock-free nga programa ug tingali adunay pipila nga kasinatian sa kini nga lugar. Apan kini usa lamang ka pangagpas; ang sitwasyon mahimong mas klaro sa komperensya mismo. Anyway, salamat sa imong oras. Sigurado ko nga ang interbyu makapainteres kaayo sa among mga magbabasa. Salamat kaayo!

Vitali: Salamat. 

Michael: Malipay ko nga makigkita nimo sa St. Petersburg. 

Alexey: Kita pud, naay nindot nga syudad. Nakaadto ka na ba dinhi?

Michael: Dili, wala pa gyud ko makaadto sa Russia. Apan ang St. Petersburg kanunay nga naa sa lista sa mga lugar nga wala pa nako maadtoan, apan kung diin gusto gyud nako moadto, mao nga nalipay kaayo ako sa pagdapit. 

Alexey: Pinaagi sa dalan, kita adunay usa ka programa sa mga excursion alang sa mga mamumulong. Daghang salamat sa interbyu, ug maayong adlaw!

Mahimo nimong ipadayon ang imong panag-istoryahanay uban ni Michael sa komperensya sa Hydra 2019, nga ipahigayon sa Hulyo 11-12, 2019 sa St. Moabot siya nga dunay report "Dual nga istruktura sa datos". Mahimong mapalit ang mga tiket sa opisyal nga website.

Source: www.habr.com

Idugang sa usa ka comment