"అనుభావిక ఫలితాలు ప్రచురణ కోసం మాత్రమే, పని యొక్క నిజమైన ఉద్దేశ్యాలు సౌందర్యమైనవి." మైఖేల్ స్కాట్‌తో గొప్ప ఇంటర్వ్యూ

"అనుభావిక ఫలితాలు ప్రచురణ కోసం మాత్రమే, పని యొక్క నిజమైన ఉద్దేశ్యాలు సౌందర్యమైనవి." మైఖేల్ స్కాట్‌తో గొప్ప ఇంటర్వ్యూ మైఖేల్ స్కాట్ - 34 సంవత్సరాలు యూనివర్శిటీ ఆఫ్ రోచెస్టర్‌లో కంప్యూటర్ సైన్స్ ప్రొఫెసర్‌గా మరియు అతని ఇంటి యూనివర్సిటీ ఆఫ్ విస్కాన్సిన్-మాడిసన్‌లో ఐదేళ్లపాటు డీన్‌గా ఉన్నారు. అతను విద్యార్థులకు సమాంతర మరియు పంపిణీ చేయబడిన ప్రోగ్రామింగ్ మరియు భాష రూపకల్పన గురించి పరిశోధిస్తాడు మరియు బోధిస్తాడు.

పాఠ్య పుస్తకం ద్వారా ప్రపంచానికి మైఖేల్ గురించి తెలుసు "ప్రోగ్రామింగ్ లాంగ్వేజ్ ప్రాగ్మాటిక్స్", పని గురించి ఏమిటి "భాగస్వామ్య-మెమరీ మల్టీప్రాసెసర్‌లపై స్కేలబుల్ సింక్రొనైజేషన్ కోసం అల్గారిథమ్‌లు" పంపిణీ చేయబడిన కంప్యూటింగ్ రంగంలో అత్యంత ప్రసిద్ధి చెందిన వాటిలో ఒకటిగా Dijkstra బహుమతిని అందుకుంది. ఆ అల్గోరిథం యొక్క రచయితగా కూడా మీకు తెలిసి ఉండవచ్చు మైఖేల్-స్కాట్.

డౌగ్ లీతో కలిసి, అతను జావా లైబ్రరీలకు శక్తినిచ్చే నాన్-బ్లాకింగ్ అల్గారిథమ్‌లు మరియు సింక్రోనస్ క్యూలను అభివృద్ధి చేశాడు. అమలు "ద్వంద్వ డేటా నిర్మాణాలు" JavaSE 6లో పనితీరు 10 రెట్లు మెరుగుపడింది ThreadPoolExecutor.

విషయ సూచిక:

  • ప్రారంభ కెరీర్, రోచెస్టర్ విశ్వవిద్యాలయం. ప్రాజెక్ట్ షార్లెట్, లింక్స్ భాష;
  • IEEE స్కేలబుల్ కోహెరెంట్ ఇంటర్‌ఫేస్, MCS లాకింగ్;
  • నిరంతరం మారుతున్న ప్రపంచంలో మనుగడ;
  • విద్యార్థులు మొద్దుబారిపోతున్నారా? ప్రపంచ పోకడలు, అంతర్జాతీయీకరణ;
  • విద్యార్థులతో ప్రభావవంతమైన పని;
  • కొత్త కోర్సులు మరియు పుస్తకాల తయారీని ఎలా కొనసాగించాలి;
  • వ్యాపారం మరియు విద్యాసంస్థల మధ్య లింకులు;
  • ఆలోచనల ఆచరణాత్మక అమలు. MCS, MS, CLH, JSR 166, డగ్ లీ మరియు మరిన్నింటితో పని చేస్తోంది;
  • లావాదేవీ మెమరీ;
  • కొత్త నిర్మాణాలు. లావాదేవీ జ్ఞాపకశక్తి యొక్క విజయం సమీపంలో ఉంది;
  • అస్థిరత లేని మెమరీ, ఆప్టేన్ DIMM, అల్ట్రా-ఫాస్ట్ పరికరాలు;
  • తదుపరి పెద్ద ట్రెండ్. ద్వంద్వ డేటా నిర్మాణాలు. హైడ్రా.

ఇంటర్వ్యూ వీరిచే నిర్వహించబడుతుంది:

విటాలీ అక్సెనోవ్ — ప్రస్తుతం IST ఆస్ట్రియాలో పోస్ట్‌డాక్ మరియు ITMO విశ్వవిద్యాలయంలో కంప్యూటర్ టెక్నాలజీస్ విభాగంలో సభ్యుడు. పోటీ డేటా నిర్మాణాల సిద్ధాంతం మరియు అభ్యాస రంగంలో పరిశోధనను నిర్వహిస్తుంది. ISTలో పని చేయడానికి ముందు, అతను ప్రొఫెసర్ పీటర్ కుజ్నెత్సోవ్ పర్యవేక్షణలో పారిస్ డిడెరోట్ విశ్వవిద్యాలయం మరియు ITMO విశ్వవిద్యాలయం నుండి తన PhDని పొందాడు.

అలెక్సీ ఫెడోరోవ్ - డెవలపర్‌ల కోసం సమావేశాలను నిర్వహించే రష్యన్ కంపెనీ JUG Ru గ్రూప్‌లో నిర్మాత. అలెక్సీ 50 కంటే ఎక్కువ సమావేశాల తయారీలో పాల్గొన్నాడు మరియు అతని రెజ్యూమ్‌లో ఒరాకిల్ (JCK, జావా ప్లాట్‌ఫాం గ్రూప్)లో డెవలప్‌మెంట్ ఇంజనీర్ స్థానం నుండి ఓడ్నోక్లాస్నికిలో డెవలపర్ స్థానం వరకు ప్రతిదీ ఉన్నాయి.

వ్లాదిమిర్ సిట్నికోవ్ - నెట్‌క్రాకర్‌లో ఇంజనీర్. నెట్‌క్రాకర్ OS యొక్క పనితీరు మరియు స్కేలబిలిటీపై పది సంవత్సరాల పని, నెట్‌వర్క్ మరియు నెట్‌వర్క్ పరికరాల నిర్వహణ ప్రక్రియలను ఆటోమేట్ చేయడానికి టెలికాం ఆపరేటర్లు ఉపయోగించే సాఫ్ట్‌వేర్. జావా మరియు ఒరాకిల్ డేటాబేస్ పనితీరు సమస్యలపై ఆసక్తి ఉంది. అధికారిక PostgreSQL JDBC డ్రైవర్‌లో డజనుకు పైగా పనితీరు మెరుగుదలల రచయిత.

ప్రారంభ కెరీర్, రోచెస్టర్ విశ్వవిద్యాలయం. షార్లెట్ ప్రాజెక్ట్, లింక్స్ భాష.

Алексей: ప్రారంభించడానికి, రష్యాలో మనమందరం కంప్యూటర్ సైన్స్, డేటా సైన్స్ మరియు అల్గారిథమ్‌లను నిజంగా ఇష్టపడతామని నేను మీకు చెప్పాలనుకుంటున్నాను. ఇది పూర్తిగా అశ్లీలమైనది. మేము అన్నీ చదివాము పుస్తకం కోర్మెన్, లీజర్సన్ మరియు రివెస్ట్. అందువల్ల, రాబోయే సమావేశం, పాఠశాల మరియు ఈ ఇంటర్వ్యూ కూడా బాగా ప్రాచుర్యం పొందాలి. ఈ ఇంటర్వ్యూ కోసం మేము విద్యార్థులు, ప్రోగ్రామర్లు మరియు కమ్యూనిటీ సభ్యుల నుండి చాలా ప్రశ్నలను అందుకున్నాము, కాబట్టి ఈ అవకాశం కోసం మేము చాలా కృతజ్ఞతలు. USలో కంప్యూటర్ సైన్స్‌కి అదే ప్రేమ లభిస్తుందా?

మైఖేల్: మా ఫీల్డ్ చాలా వైవిధ్యమైనది, దీనికి చాలా దిశలు ఉన్నాయి మరియు ఇది సమాజాన్ని చాలా రకాలుగా ప్రభావితం చేస్తుంది, మీకు ఖచ్చితమైన సమాధానం ఇవ్వడం నాకు కష్టం. కానీ వాస్తవం ఏమిటంటే ఇది గత 30 సంవత్సరాలలో సాధారణంగా వ్యాపారం, పరిశ్రమ, కళ మరియు సమాజంలో విపరీతమైన మార్పులను తీసుకువచ్చింది.

విటాలి: దూరమైన దానితో ప్రారంభిద్దాం. అనేక విశ్వవిద్యాలయాలలో ఒక నిర్దిష్ట ప్రాంతంలో స్పెషలైజేషన్ వంటిది ఉంటుంది. కార్నెగీ మెల్లన్ యూనివర్సిటీకి ఇది సమాంతర కంప్యూటింగ్, MITకి ఇది క్రిప్టోగ్రఫీ, రోబోట్‌లు మరియు మల్టీథ్రెడింగ్. రోచెస్టర్ విశ్వవిద్యాలయంలో అటువంటి ప్రత్యేకత ఉందా?

మైఖేల్: నిజం చెప్పాలంటే, CMU మరియు MIT అన్ని రంగాలలో ప్రత్యేకత కలిగి ఉన్నాయని నేను చెబుతాను. ఆర్టిఫిషియల్ ఇంటెలిజెన్స్‌పై మా డిపార్ట్‌మెంట్ ఎప్పుడూ ఎక్కువ శ్రద్ధ చూపుతుంది. మా కోసం పని చేసే వ్యక్తులలో సగం మంది AI లేదా మానవ-కంప్యూటర్ పరస్పర చర్యలో నిమగ్నమై ఉన్నారు - ఈ వాటా ఇతర విభాగాల కంటే ఎక్కువగా ఉంది మరియు ఎల్లప్పుడూ అలాగే ఉంది. కానీ నేను యూనివర్సిటీలో ఉన్నప్పుడు, నాకు AIలో ఎలాంటి కోర్సులు లేవు మరియు నేను ఈ రంగంలో ఎప్పుడూ పని చేయలేదు. కాబట్టి నాకు సంబంధం లేని సమస్యలో నా డిపార్ట్‌మెంట్ ప్రత్యేకత. ఓదార్పు ఏమిటంటే, మా విభాగానికి సంబంధించిన రెండవ ముఖ్యమైన సమస్య సమాంతర మరియు బహుళ-థ్రెడ్ ప్రోగ్రామింగ్, అంటే నా ప్రత్యేకత.

విటాలి: మల్టీ-థ్రెడ్ ప్రోగ్రామింగ్ రంగం ఇప్పుడిప్పుడే ఉద్భవిస్తున్నప్పుడు మీరు కంప్యూటర్ సైన్స్‌లో పని చేయడం ప్రారంభించారు. మీ ప్రచురణల జాబితా మీ మొదటి రచనలు చాలా విస్తృతమైన సమస్యలతో వ్యవహరించాయని చూపిస్తుంది: బహుళ-థ్రెడ్ సిస్టమ్‌లలో మెమరీ నిర్వహణ, పంపిణీ చేయబడిన ఫైల్ సిస్టమ్‌లు, ఆపరేటింగ్ సిస్టమ్‌లు. ఎందుకు అటువంటి బహుముఖ ప్రజ్ఞ? మీరు పరిశోధన సంఘంలో మీ స్థానాన్ని కనుగొనడానికి ప్రయత్నిస్తున్నారా?

మైఖేల్: విద్యార్థిగా, నేను పాల్గొన్నాను షార్లెట్ ప్రాజెక్ట్ విస్కాన్సిన్ విశ్వవిద్యాలయంలో, మొదటి పంపిణీ చేయబడిన ఆపరేటింగ్ సిస్టమ్‌లలో ఒకటి అభివృద్ధి చేయబడింది. అక్కడ నేను రాఫెల్ ఫింకెల్‌తో కలిసి పనిచేశాను (రాఫెల్ ఫింకెల్) మరియు మార్విన్ సోలమన్ (మార్విన్ సోలమన్) పంపిణీ చేయబడిన సిస్టమ్‌ల కోసం సిస్టమ్ సాఫ్ట్‌వేర్ కోసం భాషను అభివృద్ధి చేయడానికి నా వ్యాసం అంకితం చేయబడింది - ఇప్పుడు ప్రతి ఒక్కరూ దాని గురించి మరచిపోయారు మరియు దేవునికి ధన్యవాదాలు. నేను లింక్స్ ప్రోగ్రామింగ్ లాంగ్వేజ్‌ని సృష్టించాను, ఇది వదులుగా కపుల్డ్ డిస్ట్రిబ్యూటెడ్ ఆపరేటింగ్ సిస్టమ్ కోసం సర్వర్‌లను సులభంగా సృష్టించడానికి ఉద్దేశించబడింది. ఆ సమయంలో నేను ప్రధానంగా ఆపరేటింగ్ సిస్టమ్‌లలో నిమగ్నమై ఉన్నందున, నా కెరీర్ ప్రధానంగా వాటితో అనుసంధానించబడి ఉంటుందని నేను భావించాను. కానీ రోచెస్టర్ చాలా చిన్న విశ్వవిద్యాలయం, మరియు దీని కారణంగా, అక్కడ ఉన్న వివిధ సమూహాలు ఒకదానితో ఒకటి చాలా సన్నిహితంగా సంభాషించాయి. నేను మాట్లాడటానికి అక్కడ డజను ఇతర ఆపరేటింగ్ సిస్టమ్‌ల వ్యక్తులు లేరు, కాబట్టి నా పరిచయాలన్నీ పూర్తిగా భిన్నమైన ప్రాంతాల్లో పనిచేసిన వ్యక్తులతో ఉన్నాయి. నేను చాలా ఆనందించాను, ఆల్‌రౌండర్‌గా ఉండటం నాకు పెద్ద ప్రయోజనం. మేము బహుళ-థ్రెడ్ డేటా నిర్మాణాలు మరియు సమకాలీకరణ అల్గోరిథంల గురించి ప్రత్యేకంగా మాట్లాడినట్లయితే, నేను వాటిని పూర్తిగా ప్రమాదవశాత్తు పని చేయడం ప్రారంభించాను.

IEEE స్కేలబుల్ కోహెరెంట్ ఇంటర్‌ఫేస్, MCS లాకింగ్.

విటాలి: దీని గురించి కొంచెం వివరంగా చెప్పగలరా?

మైఖేల్: ఇది అందరికీ చెప్పడంలో నేను ఎప్పుడూ అలసిపోని ఫన్నీ కథ. ఇది ఒక సమావేశంలో జరిగింది ASPLOS బోస్టన్‌లో - ఇది 80ల చివరలో లేదా 90వ దశకం ప్రారంభంలో. జాన్ మెల్లర్-క్రుమ్మీ (జాన్ మెల్లర్-క్రుమ్మీ), మా అధ్యాపకుల గ్రాడ్యుయేట్. నేను అతనికి తెలుసు, కానీ మేము ఇంతకు ముందు ఉమ్మడి పరిశోధన నిర్వహించలేదు. మేరీ వెర్నాన్ (మేరీ వెర్నాన్) విస్కాన్సిన్ నుండి వారు విస్కాన్సిన్‌లో అభివృద్ధి చేస్తున్న మల్టీప్రాసెసర్ సిస్టమ్ గురించి ప్రసంగించారు: విస్కాన్సిన్ మల్టీక్యూబ్. ఈ మల్టీక్యూబ్ హార్డ్‌వేర్ స్థాయిలో క్యూ ఆన్ సింక్ బిట్ అని పిలిచే సింక్రొనైజేషన్ మెకానిజమ్‌ను కలిగి ఉంది మరియు తర్వాత ఇది కాల్బీ చీజ్ లాగా అనిపించినందున దానికి Q ఆన్ లాక్ బిట్ అని పేరు పెట్టారు, ఇది పన్. మీరు మల్టీథ్రెడింగ్ మెకానిజమ్‌లపై ఆసక్తి కలిగి ఉంటే, IEEE స్కేలబుల్ కోహెరెంట్ ఇంటర్‌ఫేస్ స్టాండర్డ్ కోసం Colby చివరికి సింక్రొనైజేషన్ ఇంజిన్‌గా మారిందని మీకు తెలిసి ఉండవచ్చు. ఇది హార్డ్‌వేర్ స్థాయిలో ఒక కాష్ నుండి మరొకదానికి పాయింటర్‌లను సృష్టించే లాకింగ్ మెకానిజం, దీని వలన ప్రతి లాక్ హోల్డర్ ఎవరి మలుపు అని తెలుసుకుంటారు. జాన్ మరియు నేను దీని గురించి విన్నప్పుడు, మేము ఒకరినొకరు చూసుకుని ఇలా అన్నాము: హార్డ్‌వేర్ స్థాయిలో దీన్ని ఎందుకు చేయాలి? పోలిక మరియు మార్పిడిని ఉపయోగించి అదే విషయాన్ని సాధించలేరా? క్లాస్‌రూమ్‌లో పడి ఉన్న నోట్‌బుక్‌ ఒకటి తీసుకుని దానిపై రాసుకున్నాం MCS నిరోధించడం, మేరీ తన నివేదికను కొనసాగించినప్పుడు. తదనంతరం, మేము దానిని అమలు చేసాము, ప్రయోగాలు చేసాము, ఆలోచన విజయవంతమైంది మరియు మేము కథనాన్ని ప్రచురించాము. ఆ సమయంలో, నాకు, ఈ అంశం కేవలం ఆహ్లాదకరమైన పరధ్యానంగా అనిపించింది, ఆ తర్వాత నేను ఆపరేటింగ్ సిస్టమ్‌లకు తిరిగి రావాలని అనుకున్నాను. కానీ అదే మార్గంలో మరొక సమస్య తలెత్తింది మరియు చివరికి సమకాలీకరణ, మల్టీథ్రెడింగ్ మరియు డేటా నిర్మాణాలు నా ప్రత్యేకతగా మారాయి. మీరు గమనిస్తే, ఇదంతా ప్రమాదవశాత్తు జరిగింది.

విటాలి: MCS నిరోధించడం నాకు చాలా కాలంగా తెలుసు, కానీ ఇది మీ పని అని నాకు తెలియదు మరియు మీ ఇంటి పేర్లకు సంక్షిప్త నామం అని అర్థం కాలేదు.

ఎప్పటికప్పుడు మారుతున్న ప్రపంచంలో ఎలా జీవించాలి?

Алексей: సంబంధిత అంశంపై నాకు ఒక ప్రశ్న ఉంది. 30 లేదా 40 సంవత్సరాల క్రితం వివిధ ప్రత్యేకతలలో ఎక్కువ స్వేచ్ఛ ఉండేది. మీరు మల్టీథ్రెడింగ్ లేదా డిస్ట్రిబ్యూట్ సిస్టమ్‌లలో వృత్తిని ప్రారంభించాలనుకుంటే, మీకు స్వాగతం, మీరు ఆపరేటింగ్ సిస్టమ్‌లలోకి ప్రవేశించాలనుకుంటే, సమస్య లేదు. ప్రతి ప్రాంతంలో చాలా ఓపెన్ ప్రశ్నలు మరియు కొంతమంది నిపుణులు ఉన్నారు. ఇరుకైన ప్రత్యేకతలు ఇప్పుడు ఉద్భవించాయి: సాధారణంగా ఆపరేటింగ్ సిస్టమ్‌లపై నిపుణులు లేరు, వ్యక్తిగత సిస్టమ్‌లపై నిపుణులు ఉన్నారు. మల్టీథ్రెడింగ్ మరియు డిస్ట్రిబ్యూటెడ్ సిస్టమ్‌ల విషయంలో కూడా ఇదే ఉంటుంది. కానీ సమస్య ఏమిటంటే, మన జీవితాలు అంతులేనివి కావు; ప్రతి ఒక్కరూ పరిశోధనకు కొన్ని దశాబ్దాలు మాత్రమే కేటాయించగలరు. ఈ కొత్త ప్రపంచంలో ఎలా జీవించాలి?

మైఖేల్: ఈ విషయంలో మాకు ప్రత్యేకత లేదు;ఇతర ప్రాంతాల్లో ఒకసారి ఇదే జరిగింది. ఈ ఫీల్డ్ "టీనేజ్" సంవత్సరాల్లో ఉన్నప్పుడు నేను కంప్యూటర్ సైన్స్‌లో పనిచేయడం ప్రారంభించినందుకు నేను అదృష్టవంతుడిని. కొన్ని పునాదులు ఇప్పటికే వేయబడ్డాయి, కానీ ప్రతిదీ ఇప్పటికీ చాలా అపరిపక్వంగా ఉంది. ఈ అవకాశం తరచుగా రాదు. ఎలక్ట్రికల్ ఇంజనీరింగ్ చాలా కాలం నుండి ఉంది, భౌతిక శాస్త్రం ఇంకా ఎక్కువ కాలం, గణితం దాదాపు సమయం ప్రారంభం నుండి. కానీ గణితంలో ఎవరూ ఆసక్తికరమైన ఆవిష్కరణలు చేయడం లేదని దీని అర్థం కాదు. ఇంకా చాలా బహిరంగ సమస్యలు ఉన్నాయి, కానీ అదే సమయంలో, మరింత నేర్చుకోవాలి. ఇంతకు ముందు ఉన్న దానికంటే ఇప్పుడు చాలా ఎక్కువ స్పెషలైజేషన్‌లు ఉన్నాయని మీరు గమనించడం సరైనదే, అయితే దీని అర్థం మానవ కార్యకలాపాల యొక్క ఇతర రంగాల మాదిరిగానే మనం కూడా అదే పరిస్థితిలో ఉన్నట్లు మాత్రమే అర్థం.

Алексей: ఇక్కడ సమస్య యొక్క మరింత ఆచరణాత్మక అంశం గురించి నాకు ఆసక్తి ఉంది. నాకు గణిత నేపథ్యం ఉంది మరియు నా అధ్యయన సమయంలో నేను తరచుగా సమావేశాలకు హాజరయ్యాను మరియు వివిధ శాస్త్రీయ అంశాలపై పనిచేశాను. ప్రేక్షకుల్లో ఎవరూ నా నివేదికలను అర్థం చేసుకోలేదని మరియు అదే విధంగా, ఇతర వ్యక్తుల నివేదికలు తమకు మాత్రమే అర్థమయ్యేలా ఉన్నాయని నేను కనుగొన్నాను. అత్యున్నత స్థాయి అంశాలలో ఇది అలా కాదు, కానీ మీరు దేనినైనా పరిశోధించడం ప్రారంభించిన వెంటనే, ప్రేక్షకులు మీతో కలిసి ఉండలేరు. మీరు దీన్ని ఎలా ఎదుర్కొంటారు?

మైఖేల్: ఎల్లప్పుడూ విజయవంతం కాదు. నేను ఇటీవల ఒక నివేదికను సిద్ధం చేసాను, అందులో నేను సాంకేతిక వివరాలకు చాలా లోతుగా వెళ్ళాను. చాలా మంది ప్రేక్షకులు నన్ను అర్థం చేసుకోలేదని, అందుకే ఎగిరి గంతేసి పరిస్థితులకు తగ్గట్టుగా మారాల్సి వచ్చిందని టాక్ నడుస్తోంది. స్లయిడ్‌లను మార్చడం సాధ్యపడలేదు, కాబట్టి ఇది బాగా లేదు - కాబట్టి, సాధారణంగా చెప్పాలంటే, నేను స్లయిడ్‌లను ఉపయోగించకూడదని ప్రయత్నిస్తాను. మొత్తంమీద, మీ ప్రేక్షకులను పరిగణనలోకి తీసుకోవాలని నా సలహా. మీరు ఎవరితో మాట్లాడుతున్నారో, వారి జ్ఞాన స్థాయి ఏమిటో మరియు మీ పనిని మెచ్చుకోవడానికి వారు ఏమి వినాలి అని మీరు తెలుసుకోవాలి.

విటాలి: ఈ ఉపన్యాసం దేనికి సంబంధించినదో మీరు మాకు సూచన ఇవ్వగలరా?

మైఖేల్: నిజం చెప్పాలంటే, ప్రశ్నలో ఉన్న వ్యక్తులను అనామకంగా వదిలివేయడానికి నేను ఈ అంశాన్ని విస్తరించకూడదని కోరుకుంటున్నాను. విషయమేమిటంటే, మనం తరచుగా పని చేస్తున్న సమస్య యొక్క చిక్కులను చాలా లోతుగా పరిగణిస్తాము, కాబట్టి సమస్య ఎందుకు ఆసక్తికరంగా మరియు ముఖ్యమైనదో మరియు అది ఏ సమస్యలకు సంబంధించిందో చర్చ ప్రారంభంలో వివరించడం మాకు కష్టమవుతుంది. ప్రేక్షకులకు ఇప్పటికే తెలుసు. నా పరిశీలనల ప్రకారం, విద్యార్థులు ఈ నైపుణ్యాన్ని నేర్చుకోవడం చాలా కష్టం. మరియు ఇది నా ఇటీవలి నివేదిక యొక్క బలహీనమైన అంశం. సరిగ్గా నిర్మాణాత్మక నివేదిక, మొదటి నుండి, ప్రేక్షకులతో పరిచయాన్ని కనుగొని, సరిగ్గా సమస్య ఏమిటో మరియు ఇప్పటికే తెలిసిన అంశాలతో ఎలా సంబంధం కలిగి ఉందో వారికి వివరించాలి. ఈ పరిచయం ఎంత సాంకేతికంగా ఉంటుందనేది ప్రేక్షకులపై ఆధారపడి ఉంటుంది. ఇది పూర్తిగా రంగురంగులైతే, నివేదిక బహుళ-దశలో ఉంటుంది. పరిచయం అందరికీ అందుబాటులో ఉండాలి మరియు చివరికి ఆ భాగం మీతో సన్నిహితంగా ఉండకపోవచ్చు, కానీ మీ ఫీల్డ్‌తో సాపేక్షంగా తెలిసిన వ్యక్తులు దానిని గుర్తించగలరు.

విద్యార్థులు మొద్దుబారిపోతున్నారా? ప్రపంచ పోకడలు, అంతర్జాతీయీకరణ.

Алексей: మీరు కొన్ని దశాబ్దాలుగా విద్యార్థులను గమనిస్తున్నారు. విద్యార్థులు దశాబ్దం నుండి దశాబ్దానికి లేదా సంవత్సరానికి మొద్దుబారిపోతున్నారా లేదా తెలివిగా మారుతున్నారా? రష్యాలో, ప్రతి సంవత్సరం విద్యార్థులు మూర్ఖంగా ఉన్నారని ప్రొఫెసర్లు నిరంతరం ఫిర్యాదు చేస్తారు మరియు దాని గురించి ఏమి చేయాలో స్పష్టంగా తెలియదు.

మైఖేల్: మీరు నిజంగా మా వృద్ధుల నుండి చాలా ప్రతికూలతను వినవచ్చు. ఉపచేతనంగా, మేము ఇప్పటికే కలిగి ఉన్న 30 సంవత్సరాల అనుభవాన్ని విద్యార్థులు గ్రహించాలని ఆశించే ధోరణిని కలిగి ఉన్నాము. నాకు 1985లో ఉన్నదానికంటే లోతైన అవగాహన ఉంటే, విద్యార్థులకు ఎందుకు లేదు? బహుశా వాళ్ల వయసు 20 ఏళ్లు కాబట్టి, మీరు ఏమనుకుంటున్నారు? ఇటీవలి దశాబ్దాలలో అత్యంత ముఖ్యమైన మార్పులు జనాభా సమ్మేళనంలో ఉన్నాయని నేను భావిస్తున్నాను: కెనడియన్లను మినహాయించి మాకు ఇప్పుడు అంతర్జాతీయ విద్యార్థులు గణనీయంగా ఎక్కువ మంది ఉన్నారు. మేము కెనడియన్ సరిహద్దుకు చాలా దగ్గరగా ఉన్నందున చాలా మంది కెనడియన్లు ఉండేవారు మరియు అక్కడి నుండి విద్యార్థులు వారాంతాల్లో ఇంటికి వెళ్లవచ్చు. కానీ ఇప్పుడు కెనడాలో చాలా మంచి విశ్వవిద్యాలయాలు ఉన్నాయి మరియు కెనడియన్లు ఇక్కడ చదువుకోవడానికి ఇష్టపడతారు; వాటిలో USAకి వచ్చేవారు చాలా తక్కువ.

Алексей: ఇది స్థానిక ట్రెండ్ లేదా గ్లోబల్ ట్రెండ్ అని మీరు అనుకుంటున్నారా?

మైఖేల్: నాకు సరిగ్గా ఎవరు గుర్తులేదు, కానీ ప్రపంచం ఫ్లాట్ అని ఎవరో చెప్పారు. మన రంగం మరింత అంతర్జాతీయంగా మారింది. ACM సమావేశాలు ఇంతకుముందు, అవి యునైటెడ్ స్టేట్స్‌లో ప్రత్యేకంగా నిర్వహించబడ్డాయి, తరువాత వారు ఇతర దేశాలలో ప్రతి 4 సంవత్సరాలకు ఒకసారి వాటిని నిర్వహించాలని నిర్ణయించుకున్నారు మరియు ఇప్పుడు అవి ప్రపంచవ్యాప్తంగా నిర్వహించబడుతున్నాయి. ఈ మార్పులు మరింత ప్రభావితం చేశాయి IEEE, ఇది ఎల్లప్పుడూ ACM కంటే అంతర్జాతీయ సంస్థగా ఉంది. మరియు చైనా, భారతదేశం, రష్యా, జర్మనీ మరియు అనేక ఇతర దేశాల నుండి ప్రోగ్రామ్ కుర్చీలు ఉన్నాయి, ఎందుకంటే ఇప్పుడు ప్రతిచోటా చాలా జరుగుతోంది.

Алексей: కానీ, బహుశా, అటువంటి అంతర్జాతీయీకరణలో కొన్ని ప్రతికూల అంశాలు ఉన్నాయా?

మైఖేల్: అన్ని ప్రతికూల అంశాలు సాంకేతికతకు సంబంధించినవి కావు, రాజకీయాలకు సంబంధించినవి అని నేను చెబుతాను. ఒకప్పుడు, ప్రధాన సమస్య ఏమిటంటే, యుఎస్ ప్రపంచవ్యాప్తంగా ఉన్న దేశాల నుండి తెలివైన మరియు అత్యంత ప్రతిభావంతులైన వ్యక్తులను దొంగిలించడం. ఇప్పుడు ప్రధాన సమస్య వీసాలు మరియు ఇమ్మిగ్రేషన్ చుట్టూ వివిధ దేశాల మధ్య రాజకీయ ఆటలు.

Алексей: అంటే, అడ్డంకులు మరియు అలాంటివి. అది స్పష్టమైనది.

Владимир: వ్యక్తిగతంగా, విద్యార్థులకు కొత్త సబ్జెక్టును బోధించేటప్పుడు మీరు ఏ విధానాన్ని అనుసరిస్తారనే దానిపై నాకు ఆసక్తి ఉంది. విభిన్న ఎంపికలు ఉన్నాయి: మీరు కొత్తదాన్ని ప్రయత్నించడానికి వారిని ప్రేరేపించడానికి మొదట ప్రయత్నించవచ్చు లేదా నిర్దిష్ట సాంకేతికత ఎలా పనిచేస్తుందనే వివరాలపై మీరు మరింత శ్రద్ధ చూపవచ్చు. నీకు ఏది ఇష్టం?

విద్యార్థులతో ప్రభావవంతమైన పని

Алексей: మరియు ఎలా మొదటి మరియు రెండవ మధ్య తిట్టు బ్యాలెన్స్ కనుగొనేందుకు?

మైఖేల్: సమస్య ఏమిటంటే తరగతులు ఎల్లప్పుడూ నేను కోరుకున్న విధంగా జరగవు. నేను సాధారణంగా విద్యార్థులకు చదివే విషయాలను ముందుగానే అందజేస్తాను, తద్వారా వారు దానిని లోతుగా పరిశోధించి, వారి సామర్థ్యాన్ని ఉత్తమంగా అర్థం చేసుకుంటారు మరియు వారు అర్థం చేసుకోలేని భాగాల గురించి ప్రశ్నలను రూపొందించారు. ఆపై తరగతిలో మీరు చాలా కష్టమైన క్షణాలపై దృష్టి పెట్టవచ్చు మరియు వాటిని కలిసి అన్వేషించవచ్చు. ఇలా తరగతులు బోధించడం నాకు చాలా ఇష్టం. కానీ ఇప్పుడు విద్యార్థులపై ఉన్న భారాన్ని బట్టి, వారు ముందుగానే సిద్ధమవుతున్నారని నేను ఎల్లప్పుడూ నిర్ధారించుకోలేకపోతున్నాను. ఫలితంగా, మీరు కోరుకున్న దానికంటే ఎక్కువ సమయం పదార్థాన్ని తిరిగి చెప్పడానికి మీరు ఎక్కువ సమయం కేటాయించాలి. అయినప్పటికీ, నేను మా తరగతులను ఇంటరాక్టివ్‌గా ఉంచడానికి ప్రయత్నిస్తాను. లేకపోతే, విద్యార్థులు ఇంట్లోనే చూడగలిగే వీడియోను రికార్డ్ చేయడం సులభం. ప్రత్యక్ష తరగతుల పాయింట్ మానవ పరస్పర చర్య. తరగతిలో, నేను స్లయిడ్‌ల కంటే సుద్ద మరియు బ్లాక్‌బోర్డ్‌ని ఉపయోగించాలనుకుంటున్నాను, కొన్ని సందర్భాల్లో తప్ప, బోర్డుపై రేఖాచిత్రం చాలా క్లిష్టంగా ఉన్నప్పుడు. దీనికి ధన్యవాదాలు, నేను కఠినమైన పాఠ్య ప్రణాళికకు కట్టుబడి ఉండవలసిన అవసరం లేదు. నేను మెటీరియల్‌ని ఇవ్వడానికి కఠినమైన క్రమం లేనందున, నేను స్వీకరించే ప్రశ్నలను బట్టి ప్రేక్షకులకు అనుగుణంగా దాన్ని రూపొందించడానికి ఇది నన్ను అనుమతిస్తుంది. సాధారణంగా, నేను తరగతులను వీలైనంత ఇంటరాక్టివ్‌గా చేయడానికి ప్రయత్నిస్తాను, తద్వారా నేను అందించే మెటీరియల్ నన్ను అడిగే ప్రశ్నలపై ఆధారపడి ఉంటుంది.

Владимир: ఇది చాలా బాగుంది. నా అనుభవంలో, శ్రోతలు ప్రశ్నలు అడగడం చాలా కష్టం. ఏవేవో ప్రశ్నలు వేయమని ముందే అడిగినా, ఎంత మూర్ఖుడైనా, తెలివిగలవాడైనా మౌనంగానే ఉంటారు. మీరు దీన్ని ఎలా ఎదుర్కొంటారు?

మైఖేల్: మీరు నవ్వుతారు, కానీ మీరు చాలాసేపు మౌనంగా నిలబడితే, త్వరగా లేదా తరువాత ప్రతి ఒక్కరూ అసౌకర్యానికి గురవుతారు మరియు ఎవరైనా ఒక ప్రశ్న అడుగుతారు. లేదా ఇప్పుడే చెప్పబడినది వ్యక్తులు అర్థం చేసుకున్నారో లేదో తెలుసుకోవడానికి మీరు అవును లేదా కాదు అనే సమాధానంతో సాధారణ సాంకేతిక ప్రశ్నను అడగవచ్చు. ఉదాహరణకు, పై ఉదాహరణలో డేటా రేస్ ఉందా? ఎవరు అలా అనుకుంటున్నారు? కాదని ఎవరు అనుకుంటారు? ఎవరికి ఏమీ అర్థం కాలేదు, ఎందుకంటే మొత్తం సగం చేతులు మాత్రమే పైకి లేచాయి?

విటాలి: మరియు మీరు తప్పుగా సమాధానం ఇస్తే, మీరు తరగతి నుండి తరిమివేయబడ్డారు :)

మైఖేల్: మీరు దేనికీ సమాధానం ఇవ్వకపోతే, మీరు ఒక ప్రశ్న అడగాలి. నేను ఇప్పుడే అడిగిన ప్రశ్నకు సమాధానం ఇవ్వడానికి విద్యార్థి ఖచ్చితంగా ఏమి తెలుసుకోవాలో నేను అర్థం చేసుకోవాలి. వారికి సహాయం చేయడానికి నాకు వారు సహాయం చేయాలి. వాళ్లకు సమస్య అర్థమయ్యేలా వాటికి తగ్గట్టుగా ఉండేందుకు నేను సిద్ధంగా ఉన్నాను. కానీ వాళ్ళ తలలో ఏముందో నాకు తెలియకపోతే నేను చేయలేను. మరియు మీరు చాలా కాలం పాటు విద్యార్థులకు శాంతిని ఇవ్వకపోతే, కొన్నిసార్లు చివరికి వారు సరైన ప్రశ్నలను అడుగుతారు, అంటే విద్యార్థుల తలలో సరిగ్గా ఏమి జరుగుతుందో చూడటానికి నన్ను అనుమతించేవి. 

Алексей: ఈ ప్రశ్నలు కొన్నిసార్లు మీరే ఇంతకు ముందు ఆలోచించని ఆలోచనలకు దారితీస్తాయా? అవి ఊహించనివా? సమస్యను కొత్త కోణంలో చూసేందుకు అవి మిమ్మల్ని అనుమతిస్తాయా?

మైఖేల్: మెటీరియల్‌ని ప్రదర్శించడానికి కొత్త మార్గాన్ని తెరిచే ప్రశ్నలు ఉన్నాయి. నేను మాట్లాడటానికి ప్లాన్ చేయని ఆసక్తికరమైన సమస్యలకు దారితీసే ప్రశ్నలు తరచుగా ఉన్నాయి. ఇది జరిగినప్పుడు నేను టాపిక్‌కు దూరంగా ఉండే ధోరణిని కలిగి ఉన్నానని విద్యార్థులు తరచుగా నాతో చెబుతుంటారు. మరియు, వారి ప్రకారం, చాలా తరచుగా ఇది పాఠం యొక్క అత్యంత ఆసక్తికరమైన భాగం. చాలా అరుదుగా, కేవలం కొన్ని సార్లు, విద్యార్థులు పరిశోధనలో కొత్త దిశను ప్రేరేపించే ప్రశ్నలను అడిగారు మరియు వ్యాసంగా ఎదిగారు. తరగతుల సమయంలో కాకుండా విద్యార్థులతో సంభాషణలలో ఇది చాలా తరచుగా జరుగుతుంది, కానీ అప్పుడప్పుడు ఇది తరగతుల సమయంలో జరుగుతుంది. 

Алексей: కాబట్టి విద్యార్థులు మిమ్మల్ని ప్రశ్నలు అడిగారు, దాని ఆధారంగా ఒక కథనాన్ని ప్రచురించడం సాధ్యమైంది?

మైఖేల్: అవును. 

విటాలి: మీరు విద్యార్థులతో ఎంత తరచుగా ఈ సంభాషణలు చేస్తున్నారు? పాఠం సమయంలో కవర్ చేసిన వాటి కంటే వారు ఎప్పుడు ఎక్కువ నేర్చుకోవాలనుకుంటున్నారు?

మైఖేల్: నా గ్రాడ్యుయేట్ విద్యార్థులతో - అన్ని సమయాలలో. నా దగ్గర వాటిలో 5 లేదా 6 ఉన్నాయి మరియు మేము వారితో ఎప్పుడూ ఏదో ఒక విషయాన్ని చర్చిస్తాము. మరియు నా తరగతులకు హాజరయ్యే విద్యార్థులతో ఈ రకమైన సంభాషణలు చాలా సాధారణం కాదు. ఇది చాలా తరచుగా జరగాలని నేను కోరుకుంటున్నాను. ఆఫీసు వేళల్లో ఫ్యాకల్టీ వద్దకు రావడానికి వారు భయపడుతున్నారని నేను అనుమానిస్తున్నాను. ప్రతి సెమిస్టర్, కొంతమంది విద్యార్థులు ఈ మానసిక అవరోధాన్ని అధిగమించగలుగుతారు మరియు తరగతి తర్వాత వారితో మాట్లాడటం ఎల్లప్పుడూ చాలా ఆసక్తికరంగా ఉంటుంది. నిజమే, విద్యార్థులందరూ ధైర్యంగా ఉంటే, నాకు తగినంత సమయం ఉండదు. కాబట్టి బహుశా ప్రతిదీ తప్పక పని చేస్తుంది. 

విటాలి: విద్యార్థులతో కమ్యూనికేట్ చేయడానికి మీరు సమయాన్ని ఎలా కనుగొనగలరు? నాకు తెలిసినంతవరకు, USAలో ఉపాధ్యాయులకు చాలా పని ఉంది - గ్రాంట్లు మరియు ఇలాంటి వాటి కోసం దరఖాస్తు చేయడం. 

మైఖేల్: నిజాయితీగా, విద్యార్థులతో కలిసి పనిచేయడం అనేది నా ఉద్యోగంలో నేను ఎక్కువగా ఆనందించే అంశం. కాబట్టి దీనికి నాకు తగినంత ప్రేరణ ఉంది. నా ఆఫీసులో ఎక్కువ సమయం అన్ని రకాల మీటింగులకే గడుపుతున్నాను. ఇప్పుడు వేసవి కాలం, కాబట్టి నా షెడ్యూల్ తక్కువ బిజీగా ఉంది, కానీ పాఠశాల సంవత్సరంలో, ప్రతిరోజూ 9 నుండి 17 వరకు నేను ప్రతిదీ ప్యాక్ చేసాను. పరిశోధన పని, సమీక్షలు, గ్రాంట్లు - వీటన్నింటికీ సాయంత్రాలు మరియు వారాంతాల్లో మాత్రమే ఉన్నాయి. 

కొత్త కోర్సులు మరియు పుస్తకాల తయారీని ఎలా కొనసాగించాలి.

Алексей: మీరు చాలా కాలంగా బోధిస్తున్న ఏవైనా కోర్సులను ప్రస్తుతం బోధించడం కొనసాగిస్తున్నారా? ఏదో కంప్యూటర్ సైన్స్ పరిచయం లాంటిది.

మైఖేల్: ఇక్కడ ముందుగా గుర్తుకు వచ్చేది ప్రోగ్రామింగ్ భాషలలోని కోర్సు. 

Алексей: ఈ కోర్సు యొక్క నేటి వెర్షన్ 10, 20, 30 సంవత్సరాల క్రితం ఉన్న దాని నుండి ఎంత భిన్నంగా ఉంది? బహుశా ఇక్కడ మరింత ఆసక్తికరమైనది నిర్దిష్ట కోర్సు యొక్క వివరాలు కాదు, కానీ సాధారణ పోకడలు.

మైఖేల్: ప్రోగ్రామింగ్ లాంగ్వేజ్‌లపై నా కోర్సు నేను సృష్టించిన సమయంలో కొంత అసాధారణమైనది. నేను 1980ల చివరలో నా సహోద్యోగి డౌగ్ బాల్డ్విన్ స్థానంలో చదవడం ప్రారంభించాను (డౌగ్ బాల్డ్విన్) కోర్సు యొక్క అంశం కేవలం నా ప్రత్యేకతకు సంబంధించినది, కానీ అతను వెళ్ళినప్పుడు, కోర్సును బోధించడానికి నేను ఉత్తమ అభ్యర్థిని. అప్పట్లో ఉన్న పాఠ్యపుస్తకాలేవీ నాకు నచ్చకపోవడంతో ఈ కోర్సుకు సంబంధించిన పాఠ్యపుస్తకాన్ని నేనే రాయడం ముగించాను. (ఎడిటర్ యొక్క గమనిక: మేము పుస్తకం గురించి మాట్లాడుతున్నాము "ప్రోగ్రామింగ్ లాంగ్వేజ్ ప్రాగ్మాటిక్స్") ఇది ఇప్పుడు ప్రపంచవ్యాప్తంగా 200 కంటే ఎక్కువ విశ్వవిద్యాలయాలలో ఉపయోగించబడుతోంది. నా విధానం అసాధారణమైనది, ఇది ఉద్దేశపూర్వకంగా భాష రూపకల్పన మరియు అమలు యొక్క సమస్యలను మిళితం చేస్తుంది మరియు సాధ్యమయ్యే అన్ని రంగాలలో ఈ అంశాల మధ్య పరస్పర చర్యపై గొప్ప శ్రద్ధ చూపుతుంది. ప్రాథమిక విధానం మారలేదు, అనేక ప్రాథమిక భావనలు ఉన్నాయి: నైరూప్యతలు, నేమ్‌స్పేస్‌లు, మాడ్యులారిటీ, రకాలు. కానీ ఈ భావనలను ప్రదర్శించే భాషల సమితి పూర్తిగా మారిపోయింది. కోర్సు మొదట సృష్టించబడినప్పుడు, పాస్కల్‌లో చాలా ఉదాహరణలు ఉన్నాయి, కానీ ఈ రోజు నా విద్యార్థులు చాలా మంది ఈ భాష గురించి వినలేదు. కానీ వారికి స్విఫ్ట్, గో, రస్ట్ తెలుసు, కాబట్టి నేను ఈ రోజు వాడుకలో ఉన్న భాషల గురించి మాట్లాడాలి. అలాగే, విద్యార్థులు ఇప్పుడు స్క్రిప్టింగ్ భాషలలో బాగా ప్రావీణ్యం కలిగి ఉన్నారు, కానీ నేను ఈ కోర్సును బోధించడం ప్రారంభించినప్పుడు, ఇది సంకలనం చేయబడిన భాషల గురించి. ఇప్పుడు మనకు పైథాన్, రూబీ మరియు పెర్ల్ గురించి చాలా విషయాలు అవసరం, ఎందుకంటే ఈ రోజుల్లో కోడ్ వ్రాయబడినది ఇదే, మరియు భాష రూపకల్పన రంగంలో సహా ఈ భాషలలో చాలా ఆసక్తికరమైన విషయాలు జరుగుతున్నాయి. 

విటాలి: అప్పుడు నా తదుపరి ప్రశ్న మునుపటి ప్రశ్నకు సంబంధించినది. ఈ ప్రాంతంలో ఎలా కొనసాగాలి? ఇలాంటి కోర్సును అప్‌డేట్ చేయడానికి చాలా పని అవసరమని నేను అనుమానిస్తున్నాను - మీరు కొత్త భాషలను అర్థం చేసుకోవాలి, ప్రధాన ఆలోచనలను అర్థం చేసుకోవాలి. మీరు దీన్ని ఎలా చేస్తారు?

మైఖేల్: నేను ఎప్పుడూ 100% విజయం సాధిస్తానని గొప్పగా చెప్పుకోలేను. కానీ చాలా సార్లు నేను అందరూ చేసే పనినే చేస్తాను - ఇంటర్నెట్ చదవండి. నేను రస్ట్‌ని అర్థం చేసుకోవాలనుకుంటే, నేను దాన్ని గూగుల్ చేసి, మొజిల్లా పేజీకి వెళ్లి, అక్కడ పోస్ట్ చేసిన మాన్యువల్‌ని చదవండి. ఇది వాణిజ్య అభివృద్ధిలో జరిగే విషయాలలో భాగం. మేము సైన్స్ గురించి మాట్లాడినట్లయితే, మీరు ప్రధాన సమావేశాలలో నివేదికలను అనుసరించాలి. 

వ్యాపారం మరియు విద్యారంగం మధ్య లింక్

విటాలి: వ్యాపారం మరియు శాస్త్రీయ పరిశోధనల మధ్య ఉన్న సంబంధం గురించి మాట్లాడుకుందాం. మీ రచనల జాబితాలో, నేను కాష్ కోహెరెన్స్‌పై అనేక కథనాలను కనుగొన్నాను. కాష్ అనుగుణ్యత అల్గారిథమ్‌లు ప్రచురించబడిన సమయంలో అవి అస్థిరంగా ఉన్నాయని నేను అర్థం చేసుకున్నాను? లేదా తగినంత విస్తృతంగా లేదు. ఆచరణలో మీ ఆలోచనలు ఎంత సాధారణమైనవి?

మైఖేల్: మీరు ఏ ప్రచురణల గురించి మాట్లాడుతున్నారో నాకు ఖచ్చితంగా తెలియదు. నేను నా విద్యార్థులు బిల్ బోలోస్కీతో కలిసి కొంత పని చేసాను (విలియం బోలోస్కీ) మరియు లియోనిడాస్ కొంటోటానాసిస్ (లియోనిడాస్ కొంటోతనాసిస్) 1990ల ప్రారంభంలో న్యూమాన్ యంత్రాల మెమరీ నిర్వహణపై. ఆ సమయంలో, మల్టీప్రాసెసర్ సిస్టమ్‌ను ఎలా సరిగ్గా తయారు చేయాలో వ్యాపారానికి ఇంకా అవగాహన లేదు: హార్డ్‌వేర్ స్థాయిలో రిమోట్ మెమరీని యాక్సెస్ చేయడానికి మద్దతును సృష్టించడం విలువైనదేనా, మెమరీని పంపిణీ చేయడం విలువైనదేనా, కాష్‌ను లోడ్ చేయడం సాధ్యమేనా? రిమోట్ మెమరీ, లేదా ఆపరేటింగ్ గదిలో పేజీలను తరలించడం అవసరమా? బిల్ మరియు లియోనిడాస్ ఇద్దరూ ఈ ప్రాంతంలో పనిచేశారు మరియు రిమోట్ కాష్ లోడ్ లేకుండా విధానాలను అన్వేషించారు. ఇది నేరుగా కాష్ కోహెరెన్స్‌కు సంబంధించినది కాదు, అయితే ఇది ఇప్పటికీ NUMA మెమరీ నిర్వహణపై పని చేస్తుంది మరియు ఆధునిక ఆపరేటింగ్ సిస్టమ్‌లలో పేజీ ప్లేస్‌మెంట్‌కు ఆధునిక విధానాలు దీని నుండి పెరిగాయి. మొత్తంమీద, బిల్ మరియు లియోనిడాస్ ముఖ్యమైన పని చేసారు, అయితే ఈ ప్రాంతంలో అత్యంత ప్రభావవంతమైనవి కానప్పటికీ - ఆ సమయంలో చాలా మంది వ్యక్తులు అదే పనిలో ఉన్నారు. తరువాత, నేను హార్డ్‌వేర్ లావాదేవీల మెమరీ సందర్భంలో కాష్ కోహెరెన్స్‌కు సంబంధించిన అంశంపై పని చేసాను. ఈ సమస్యపై నేను పనిచేసిన సమూహం అనేక పేటెంట్లను పొందడం ముగించింది. వాటి వెనుక కొన్ని ఆసక్తికరమైన ఆలోచనలు ఉన్నాయి, కానీ అవి ఆచరణలో అమలు చేయబడతాయని నేను అనుకోను. ఒక మార్గం లేదా మరొకటి, వారి లాభదాయకతను నిర్ధారించడం నాకు కష్టం. 

Алексей: ఈ విషయంలో, మరింత వ్యక్తిగత ప్రశ్న: మీ ఆలోచనలు ఆచరణలో పెట్టడం మీకు ఎంత ముఖ్యమైనది? లేదా మీరు దాని గురించి ఆలోచించలేదా?

మైఖేల్: ఫ్యాకల్టీలో చేరాలనుకునే ఇతర వ్యక్తులు, దరఖాస్తుదారులు లేదా అభ్యర్థులతో ఇంటర్వ్యూలలో ఈ ప్రశ్న అడగడం నాకు చాలా ఇష్టం. ఈ ప్రశ్నకు సరైన సమాధానం లేదని నేను అనుకుంటున్నాను. మంచి పనులు చేసే వ్యక్తులు చాలా భిన్నమైన ప్రేరణలను కలిగి ఉంటారు. నేను సమస్యల పట్ల ఆకర్షితుడయ్యాను ఎందుకంటే నేను వ్యక్తిగతంగా వాటిని ఆసక్తికరంగా భావిస్తున్నాను, వాటి ఆచరణాత్మక ప్రయోజనాల వల్ల కాదు. కానీ మరోవైపు, కొన్ని ఆసక్తికరమైన విషయం ఇప్పటికీ అప్లికేషన్‌ను కనుగొన్నప్పుడు, నేను దీన్ని నిజంగా ఇష్టపడుతున్నాను. కాబట్టి ఇక్కడ సులభం కాదు. కానీ నా పని ప్రారంభంలో, నేను ఇప్పటికీ ప్రపంచంలో అంతిమ ఉపయోగం అనే ఆలోచనతో కాదు, కానీ ఆలోచన యొక్క సామరస్యం మరియు దానిని అన్వేషించి దాని నుండి ఏమి వస్తుందో చూడాలనే కోరికతో నడిపించబడ్డాను. చివరికి అది ఆచరణాత్మక ఫలితాలను ఇస్తే, గొప్పది. 

Алексей: మీ విద్య మరియు అనుభవం కారణంగా, ఇతరుల ఆలోచనల విలువను అంచనా వేయడానికి మీరు చాలా మంది కంటే మెరుగ్గా ఉన్నారు. మీరు వాటిని సరిపోల్చవచ్చు మరియు ఏది బాగా పని చేస్తుందో నిర్ణయించవచ్చు. ఇంటెల్ వంటి పెద్ద తయారీదారులు ప్రస్తుతం ఆచరణలో ఉపయోగిస్తున్న విషయాల గురించి మీకు అభిప్రాయం ఉందని నేను ఖచ్చితంగా అనుకుంటున్నాను. మీ దృక్కోణంలో, ఈ కంపెనీలు తీసుకుంటున్న కోర్సు ఎంతవరకు సరైనది?

మైఖేల్: ప్రాక్టీస్ ఎల్లప్పుడూ వాణిజ్యపరంగా విజయవంతమయ్యే దాని చుట్టూ తిరుగుతుంది, అంటే లాభాలను సృష్టిస్తుంది మరియు మీరు దాని గురించి మరొకరిని అడగడం మంచిది. నా పని ఎక్కువగా ప్రచురణలలో ఫలితాలు, మరియు ఆపరేటింగ్ సిస్టమ్స్ రంగంలో అవి పనితీరు సూచికల ఆధారంగా మూల్యాంకనం చేయబడతాయి: వేగం, శక్తి వినియోగం, కోడ్ పరిమాణం. కానీ ఈ అనుభావిక ఫలితాలు కథనాలకు జోడించబడ్డాయి, తద్వారా అవి ప్రచురించబడతాయి మరియు పని కోసం ప్రజల నిజమైన ఉద్దేశ్యాలు సౌందర్యమైనవి అని నాకు ఎప్పుడూ అనిపించింది. పరిశోధకులు కళాత్మక దృక్కోణం నుండి పరిష్కారాలను అంచనా వేస్తారు, ఆలోచనలు ఎంత సొగసైనవో వారు శ్రద్ధ వహిస్తారు మరియు ఇప్పటికే ఉన్న విధానాల కంటే మెరుగైనదాన్ని సృష్టించడానికి ప్రయత్నిస్తారు. పరిశోధకులు వ్యక్తిగత, ఆత్మాశ్రయ, సౌందర్య ఉద్దేశ్యాల ద్వారా నడపబడతారు. కానీ మీరు దీని గురించి వ్యాసంలోనే వ్రాయలేరు; ఈ విషయాలు ప్రోగ్రామ్ కమిటీకి వాదనలు కావు. అదృష్టవశాత్తూ, సొగసైన పరిష్కారాలు తరచుగా వేగంగా మరియు చౌకగా ఉంటాయి. నా సహోద్యోగులలో డజను మంది మరియు నేను సుమారు 15 సంవత్సరాల క్రితం ఈ అంశంపై చర్చించాము మరియు దాని గురించి ఒక వ్యాసం రాయడం ముగించాము. మీరు ఇప్పటికీ దానిని కనుగొనగలరని నేను భావిస్తున్నాను, దీనిని పిలుస్తారు "సిస్టమ్స్ పరిశోధనను ఎలా అంచనా వేయాలి" లేదా అలాంటిదే, ఇది డజనుకు పైగా రచయితలను కలిగి ఉంది. నేను కలిసి రచయితగా ఉన్న ఏకైక వ్యాసం ఇది సాషా ఫెడోరోవా, కాబట్టి మీరు నా పబ్లికేషన్స్ లిస్ట్‌లో ఆమె పేరు కోసం వెతికితే, మీకు కావాల్సినవి మీకు కనిపిస్తాయి. ఇది సిస్టమ్స్ పరిశోధనను మూల్యాంకనం చేయడం గురించి మరియు చక్కదనం ఎంత ముఖ్యమైనది గురించి మాట్లాడుతుంది. 

Алексей: కాబట్టి సైన్స్ మరియు వ్యాపారంలో మంచిగా భావించే ప్రమాణాల మధ్య వ్యత్యాసం ఉంది. సైన్స్ పనితీరు, విద్యుత్ వినియోగం, TDP, అమలు సౌలభ్యం మరియు మరిన్నింటిని అంచనా వేస్తుంది. విశ్వవిద్యాలయంలో ఈ రకమైన పరిశోధనను నిర్వహించడానికి మీకు అవకాశం ఉందా? మీరు ప్రయోగాలు చేయగల వివిధ యంత్రాలు మరియు విభిన్న నిర్మాణాలతో కూడిన ప్రయోగశాలను కలిగి ఉన్నారా?

మైఖేల్: అవును, మా విభాగంలో చాలా విభిన్నమైన ఆసక్తికరమైన యంత్రాలు ఉన్నాయి. చాలా తరచుగా అవి చిన్నవిగా ఉంటాయి, మనకు చిన్న క్లస్టర్ మరియు వివిధ యాక్సిలరేటర్‌లతో కూడిన అనేక మల్టీప్రాసెసర్ సిస్టమ్‌లు ఉన్నాయి. అదనంగా, క్యాంపస్‌లో భారీ కంప్యూటింగ్ సెంటర్ ఉంది, ఇది అనేక డజన్ల విభిన్న విభాగాలకు చెందిన శాస్త్రవేత్తలకు సేవలు అందిస్తుంది. ఇది దాదాపు వెయ్యి నోడ్‌లు మరియు ఇరవై వేల కోర్లను కలిగి ఉంది, అన్నీ Linuxలో ఉన్నాయి. అవసరమైతే, మీరు ఎల్లప్పుడూ కొన్ని AWSని కొనుగోలు చేయవచ్చు. కాబట్టి హార్డ్‌వేర్‌తో మాకు ముఖ్యమైన పరిమితులు లేవు. 

Алексей: ముప్పై ఏళ్ల క్రితం ఎలా ఉండేది? అప్పుడు సమస్యలు ఉన్నాయా?

మైఖేల్: అప్పుడు కొంచెం భిన్నంగా ఉండేది. 1980ల మధ్య నుండి చివరి వరకు, సైన్స్ కంప్యూటింగ్ వనరుల కొరతగా పరిగణించబడింది. ఈ పరిస్థితిని పరిష్కరించడానికి, నేషనల్ సైన్స్ ఫౌండేషన్ (నేషనల్ సైన్స్ ఫౌండేషన్) సమన్వయ ప్రయోగాత్మక పరిశోధన (సమన్వయ ప్రయోగాత్మక పరిశోధన, CER) యొక్క ప్రోగ్రామ్‌ను రూపొందించారు. ప్రోగ్రామ్ యొక్క లక్ష్యం కంప్యూటర్ సైన్స్ విభాగాలకు కంప్యూటింగ్ మౌలిక సదుపాయాలను అందించడం మరియు ఇది గణనీయమైన మార్పును సాధించింది. ఆమె అందించిన డబ్బుతో, రోచెస్టర్ విశ్వవిద్యాలయంలో మేము 1984లో 128-నాట్ BBN సీతాకోకచిలుకను కొనుగోలు చేసాము, నేను అక్కడికి చేరుకోవడానికి ఒక సంవత్సరం ముందు ఇది జరిగింది. ఆ సమయంలో ఇది షేర్డ్ మెమరీతో ప్రపంచంలోనే అతిపెద్ద మల్టీప్రాసెసర్ సిస్టమ్. ఇది 128 ప్రాసెసర్‌లను కలిగి ఉంది, ఒక్కొక్కటి ప్రత్యేక మదర్‌బోర్డులో మరియు నాలుగు రాక్‌లను ఆక్రమించాయి. ప్రతి ప్రాసెసర్‌కు మెగాబైట్ మెమరీ ఉంది, 128 మెగాబైట్ల ర్యామ్ ఆ సమయంలో ఊహించలేని మొత్తం. ఈ మెషీన్‌లో మేము మొదటిసారిగా MCS లాకింగ్‌ని అమలు చేసాము. 

Алексей: కాబట్టి, నేను మిమ్మల్ని సరిగ్గా అర్థం చేసుకున్నట్లయితే, ప్రస్తుతానికి హార్డ్‌వేర్‌తో సమస్య పరిష్కరించబడిందా? 

మైఖేల్: సాధారణంగా, అవును. కొన్ని హెచ్చరికలు ఉన్నాయి: ముందుగా, మీరు చిప్ స్థాయిలో కంప్యూటర్ ఆర్కిటెక్చర్ చేస్తుంటే, అకడమిక్ వాతావరణంలో చేయడం కష్టం ఎందుకంటే వ్యాపారంలో దీన్ని చేయడానికి చాలా మెరుగైన సాధనాలు ఉన్నాయి. మీకు 10 నానోమీటర్ల కంటే తక్కువ ఏదైనా అవసరమైతే, మీరు దానిని మరొకరి నుండి ఆర్డర్ చేయాలి. ఈ ప్రాంతంలో ఇంటెల్‌లో పరిశోధకుడిగా ఉండటం చాలా సులభం. మీరు చిప్స్‌లో లేదా సాలిడ్-స్టేట్ మెమరీలో ఆప్టికల్ కమ్యూనికేషన్‌లపై పని చేస్తుంటే, మీరు ఇంకా సైన్స్‌లో లేని సాంకేతికతలను వ్యాపారంలో కనుగొంటారు, కాబట్టి మీరు పొత్తులను సృష్టించాలి. ఉదాహరణకు, స్టీఫెన్ స్వాన్సన్ (స్టీవెన్ స్వాన్సన్) సృష్టించబడింది అటువంటి భాగస్వామ్యం కొత్త మెమరీ టెక్నాలజీల కోసం. ఈ ఫారమ్ ఎల్లప్పుడూ పని చేయదు, కానీ కొన్ని సందర్భాల్లో ఇది చాలా విజయవంతమవుతుంది. అదనంగా, సైన్స్‌లో అత్యంత శక్తివంతమైన కంప్యూటింగ్ సిస్టమ్‌ల అభివృద్ధి మరింత కష్టం. ప్రస్తుతం US, జపాన్ మరియు చైనాలలో అతిపెద్ద సూపర్ కంప్యూటర్ ప్రాజెక్ట్‌లు వ్యాపారంపై దృష్టి సారించాయి. 

ఆలోచనల ఆచరణాత్మక అమలు. MCS, MS, CLH, JSR 166, డగ్ లీ మరియు మరిన్నింటితో పని చేస్తున్నారు.

విటాలి: మీరు సింక్రొనైజేషన్ అల్గారిథమ్‌లపై ఎలా పని చేయడం ప్రారంభించారనే దాని గురించి మీరు ఇప్పటికే మాట్లాడారు. మీ దగ్గర రెండు ప్రసిద్ధ కథనాలు ఉన్నాయి MCS నిరోధించడం и మైఖేల్-స్కాట్ క్యూ (MS), ఇది ఒక కోణంలో జావాలో అమలు చేయబడింది. (ఎడిటర్ యొక్క గమనిక: అన్ని ప్రచురణలను చూడవచ్చు లింక్) అక్కడ ఈ బ్లాకింగ్ కొన్ని మార్పులతో అమలు చేయబడింది మరియు అది తేలింది CLH లాక్, మరియు క్యూ ఉద్దేశించిన విధంగా అమలు చేయబడింది. కానీ మీ వ్యాసాల ప్రచురణ మరియు వాటి ఆచరణాత్మక అనువర్తనం మధ్య చాలా సంవత్సరాలు గడిచాయి. 

Алексей: క్యూ విషయంలో దాదాపు 10 ఏళ్లుగా తెలుస్తోంది.

మైఖేల్: జావా స్టాండర్డ్ లైబ్రరీలో ఈ ఫీచర్లు కనిపించకముందు?

విటాలి: అవును. ఇది జరగడానికి మీరు ఏమి చేసారు? లేక వారు ఏమీ చేయలేదా?

మైఖేల్: జావా 5లోకి MS క్యూ ఎలా వచ్చిందో నేను మీకు చెప్పగలను. అది బయటకు రావడానికి కొన్ని సంవత్సరాల ముందు, బోస్టన్ సమీపంలోని వారి ల్యాబ్‌లో సన్ మైక్రోసిస్టమ్స్‌లో మార్క్ మోయర్స్ గ్రూప్‌తో కలిసి పనిచేశాను. మల్టీథ్రెడింగ్‌లో ఆసక్తికరమైన సమస్యలపై పని చేస్తున్న తనకు తెలిసిన వ్యక్తుల కోసం అతను వర్క్‌షాప్‌ని నిర్వహించాడు, ఎందుకంటే అతను వారి కంపెనీకి విక్రయించగల అంశాలను కనుగొనాలనుకున్నాడు. అక్కడే నేను మొదటిసారి డౌగ్ లీని కలిశాను. డౌగ్ మరియు నేను మరియు సన్ నుండి మరో 25 మంది వ్యక్తులు కలిసి డౌగ్ ప్రదర్శన గురించి చర్చిస్తున్నాము JSR 166, ఇది తరువాత java.util.concurrent గా మారింది. అలాగే, డౌగ్ తాను MS క్యూను ఉపయోగించాలనుకుంటున్నానని, అయితే దీని కోసం ఇంటర్‌ఫేస్ కోసం క్యూలో ఉన్న మూలకాల సంఖ్యకు కౌంటర్ అవసరమని చెప్పాడు. అంటే, ఇది పరమాణు, ఖచ్చితమైన మరియు వేగవంతమైన ప్రత్యేక పద్ధతి ద్వారా చేయబడాలి. నేను నోడ్‌లకు సీరియల్ నంబర్‌లను జోడించాలని సూచించాను, మొదటి నోడ్ మరియు చివరిది యొక్క సంఖ్యను తీసుకొని మరొకదాని నుండి ఒకదాన్ని తీసివేయండి. డౌగ్ తన తలను గీసుకుని, "ఎందుకు కాదు" అని చెప్పాడు మరియు ఆ పనిని ముగించాడు. లైబ్రరీలో ఈ విధానాన్ని అమలు చేయడం గురించి మేము చర్చించాము, కానీ డౌగ్ చాలా పనిని స్వయంగా చేశాడు. ఫలితంగా, అతను జావాలో అద్భుతమైన మల్టీథ్రెడింగ్ మద్దతును ఏర్పాటు చేయగలిగాడు. 

Алексей: కాబట్టి, నేను సరిగ్గా అర్థం చేసుకున్నట్లయితే, .size() పద్ధతి ప్రామాణిక క్యూ ఇంటర్‌ఫేస్‌లో భాగంగా ఉండాలి మరియు ఇది O(1) యొక్క అల్గారిథమిక్ సంక్లిష్టతను కలిగి ఉండాలా?

మైఖేల్: అవును, మరియు దీనికి అదనంగా, ప్రత్యేక కౌంటర్ అవసరం.

Алексей: ఎందుకంటే మీరు జావాలో .size() పద్ధతికి కాల్ చేస్తే, ఫలితం తక్షణమే అందుబాటులో ఉంటుందని అంచనా వేయబడుతుంది మరియు సేకరణ యొక్క వాస్తవ పరిమాణంపై ఆధారపడి ఉండదు. నేను చూస్తున్నాను, ధన్యవాదాలు.

మైఖేల్: కొన్ని సంవత్సరాల తర్వాత నేను నా విద్యార్థి బిల్ షెరర్‌తో కలిసి డ్యూయల్ డేటా స్ట్రక్చర్‌లపై పని చేస్తున్నాను - నిజానికి, నేను దీని గురించి మాట్లాడతాను. హైడ్రాపై నివేదిక. డౌగ్ మా వద్దకు వచ్చి జావా ఎగ్జిక్యూటర్ ఫ్రేమ్‌వర్క్‌లో వాటిని ఉపయోగించవచ్చని చెప్పాడు. బిల్లుతో కలిసి, వారు న్యాయమైన మరియు అన్యాయమైన క్యూలు అని పిలవబడే రెండు అమలులను సృష్టించారు. అసలు కోడ్ రాయడంలో నేను పాల్గొననప్పటికీ, ఈ ప్రాజెక్ట్‌పై నేను వారికి సలహా ఇచ్చాను. దీంతో కార్యనిర్వాహకుల వేగం బాగా పెరిగింది. 

Владимир: మీరు మీ అల్గారిథమ్‌ల యొక్క సరికాని అమలులను లేదా కొత్త ఫీచర్‌లను జోడించడానికి అభ్యర్థనలను ఎదుర్కొన్నారా? సాధారణంగా, అభ్యాసం సిద్ధాంతంతో సమానంగా ఉండాలి, కానీ చాలా తరచుగా అవి భిన్నంగా ఉంటాయి. మీరు ఒక అల్గారిథమ్‌ని వ్రాసారు మరియు కాగితంపై అది పని చేస్తుందని అనుకుందాం, కానీ అమలులో పాల్గొన్న వ్యక్తులు మిమ్మల్ని మరిన్ని ఫీచర్లు లేదా అల్గోరిథం యొక్క కొన్ని రకాల ట్వీకింగ్ కోసం అడగడం ప్రారంభించారు. మీకు ఎప్పుడైనా అలాంటి పరిస్థితులు ఎదురయ్యాయా?

మైఖేల్: ఎవరైనా నా వద్దకు వచ్చి "ఎలా అమలు చేయాలి" అని అడిగిన ఏకైక ఉదాహరణ డగ్ యొక్క ప్రశ్న, నేను ఇప్పటికే మాట్లాడాను. కానీ ఆచరణాత్మక అవసరాలకు అనుగుణంగా ఆసక్తికరమైన మార్పులు చేసిన సందర్భాలు కొన్ని ఉన్నాయి. ఉదాహరణకు, IBMలోని K42 బృందం MCS లాక్‌ని మార్చింది మరియు దానిని ప్రామాణిక ఇంటర్‌ఫేస్‌గా మార్చింది కాబట్టి క్యూ నోడ్‌ను కొనుగోలు మరియు విడుదల రొటీన్‌లకు ముందుకు వెనుకకు పంపాల్సిన అవసరం లేదు. ఈ ప్రామాణిక ఇంటర్‌ఫేస్‌కు ధన్యవాదాలు, సిద్ధాంతంలో అందమైన ఆలోచన ఆచరణలో పనిచేయడం ప్రారంభించింది. వారు దాని గురించి ఎప్పుడూ ఒక కథనాన్ని ప్రచురించకపోవడం ఆశ్చర్యకరం, మరియు వారు పేటెంట్ పొందినప్పటికీ, వారు దానిని విడిచిపెట్టారు. ఆలోచన అద్భుతంగా ఉంది మరియు సాధ్యమైనప్పుడల్లా దాని గురించి మాట్లాడటానికి ప్రయత్నిస్తాను. 

నేను ప్రచురించిన అల్గారిథమ్‌లను వ్యక్తులు మెరుగుపరిచిన ఇతర సందర్భాలు ఉన్నాయి. ఉదాహరణకు, MS క్యూలో రెండు-దశల ఇన్‌స్టాలేషన్ మెకానిజం ఉంది, అంటే క్యూ యొక్క క్లిష్టమైన మార్గంలో రెండు CASలు ఉన్నాయి. పాత కార్లలో, CAS చాలా ఖరీదైనది. ఇంటెల్ మరియు ఇతర తయారీదారులు ఇటీవల వాటిని బాగా ఆప్టిమైజ్ చేసారు, కానీ ఒకప్పుడు ఇవి 30-సైకిల్ సూచనలు, కాబట్టి క్లిష్టమైన మార్గంలో ఒకటి కంటే ఎక్కువ ఉండటం అవాంఛనీయమైనది. తత్ఫలితంగా, MS క్యూను పోలి ఉండే వేరొక క్యూ అభివృద్ధి చేయబడింది, అయితే ఇది క్లిష్టమైన మార్గంలో ఒకే ఒక అణు ఆపరేషన్‌ను కలిగి ఉంది. ఒక నిర్దిష్ట వ్యవధిలో ఆపరేషన్ O(1) కంటే O(n) సమయం పట్టవచ్చు అనే వాస్తవం కారణంగా ఇది సాధించబడింది. ఇది అసంభవం, కానీ సాధ్యమే. కొన్ని క్షణాల్లో అల్గోరిథం ఈ క్యూలో ప్రారంభం నుండి ప్రస్తుత స్థానానికి క్యూలో ప్రయాణించిన వాస్తవం కారణంగా ఇది జరిగింది. సాధారణంగా, అల్గోరిథం చాలా విజయవంతమైంది. నాకు తెలిసినంతవరకు, ఇది చాలా విస్తృతంగా ఉపయోగించబడదు, ఎందుకంటే అణు కార్యకలాపాలకు మునుపటి కంటే చాలా తక్కువ వనరులు అవసరం. కానీ ఆలోచన చాలా బాగుంది. ఒరాకిల్ నుండి డేవ్ డైస్ యొక్క పని కూడా నాకు చాలా ఇష్టం. అతను చేసే ప్రతి పని చాలా ఆచరణాత్మకమైనది మరియు అతను ఇనుమును చాలా తెలివిగా ఉపయోగిస్తాడు. అతను NUMA-అవేర్ సింక్రొనైజేషన్ అల్గారిథమ్‌లు మరియు మల్టీ-థ్రెడ్ డేటా స్ట్రక్చర్‌లలో చాలా వరకు హస్తం కలిగి ఉన్నాడు. 

Владимир: మీరు అల్గారిథమ్‌లను వ్రాసినప్పుడు లేదా విద్యార్థులకు బోధించినప్పుడు, మీ పని ఫలితం వెంటనే కనిపించదు. ఒక కొత్త కథనం గురించి తెలుసుకోవడం కోసం సమాజానికి కొంత సమయం కావాలి. కొత్త అల్గోరిథం అప్లికేషన్‌ను వెంటనే కనుగొనలేదు. 

మైఖేల్: వ్యాసం ముఖ్యమైనదా కాదా అనేది వెంటనే స్పష్టంగా తెలియదు. కాన్ఫరెన్స్‌లలో అవార్డులు గెలుచుకున్న పేపర్‌లను అధ్యయనం చేయడం ఆసక్తికరంగా ఉంటుందని నేను భావిస్తున్నాను. అంటే, ఒకప్పుడు ప్రోగ్రామ్ కమిటీలలోని వ్యక్తులు ఉత్తమమైనవిగా భావించే కథనాలను చూడండి. 10, 20, 25 సంవత్సరాల్లో ఈ కథనాలు నిజంగా ఎంత ప్రభావవంతంగా ఉన్నాయో మీరు లింక్‌ల సంఖ్య మరియు వ్యాపారంపై ప్రభావంతో లెక్కించడానికి ప్రయత్నించాలి. రెండింటి మధ్య బలమైన సహసంబంధం ఉంటుందని నేను అనుమానిస్తున్నాను. ఇది సున్నా కాదు, కానీ చాలా మటుకు అది మనం కోరుకునే దానికంటే చాలా బలహీనంగా ఉంటుంది. అనేక ఆలోచనలు విస్తృతంగా వ్యాపించక ముందు చాలా కాలం వరకు క్లెయిమ్ చేయబడకుండా ఉంటాయి. ఉదాహరణకు, లావాదేవీ మెమరీని తీసుకుందాం. అసలు కథనం ప్రచురించబడిన సమయం నుండి ప్రజలు వాస్తవానికి దానితో యంత్రాలను నిర్మించడం ప్రారంభించే వరకు 10 సంవత్సరాలకు పైగా గడిచిపోయాయి. మరియు వాణిజ్య ఉత్పత్తులలో ఈ మెమరీ కనిపించే ముందు - మరియు అన్ని 20. చాలా కాలం పాటు ఎవరూ కథనానికి శ్రద్ధ చూపలేదు, ఆపై దానికి లింక్‌ల సంఖ్య బాగా పెరిగింది. దీన్ని ముందుగా ఊహించడం కష్టం. మరోవైపు, కొన్నిసార్లు ఆలోచనలు వెంటనే అమలులోకి వస్తాయి. కొన్ని సంవత్సరాల క్రితం, నేను DISC కోసం జో ఇజ్రేలెవిట్జ్‌తో ఒక పేపర్‌ను వ్రాశాను, అది నిరంతర డేటా స్ట్రక్చర్‌ల కోసం చెల్లుబాటు యొక్క కొత్త అధికారిక నిర్వచనాన్ని ప్రతిపాదించింది, వాటిని రన్నింగ్ కంప్యూటర్ క్రాష్ అయిన తర్వాత ఉపయోగించవచ్చు. నేను మొదటి నుండి కథనాన్ని ఇష్టపడ్డాను, కానీ నేను ఊహించిన దానికంటే చాలా ప్రజాదరణ పొందింది. ఇది అనేక విభిన్న సమూహాలచే ఉపయోగించబడింది మరియు చివరికి నిలకడ నిర్మాణాల యొక్క ప్రామాణిక నిర్వచనంగా మారింది. ఏది, అయితే, బాగుంది.

Владимир: మీరు మూల్యాంకనం కోసం ఉపయోగించే ఏవైనా పద్ధతులు ఉన్నాయా? మీరు మీ వ్యాసాలను మరియు మీ విద్యార్థులను మూల్యాంకనం చేయడానికి కూడా ప్రయత్నిస్తున్నారా? మీరు బోధించిన వ్యక్తి సరైన దిశలో వెళ్తున్నారా అనే విషయంలో.

మైఖేల్: అందరిలాగే, నేను ప్రస్తుతం చేస్తున్న పనులపై ఎక్కువ శ్రద్ధ చూపుతాను. మరలా, అందరిలాగే, నా గత పేపర్లు ఉదహరించబడుతున్నాయో లేదో తెలుసుకోవడానికి నేను అప్పుడప్పుడు Google స్కాలర్‌ని తనిఖీ చేస్తున్నాను, కానీ అది ఉత్సుకతతో ఎక్కువ. నా విద్యార్థులు ఇప్పుడు చేస్తున్న పనిలో ఎక్కువగా నేను లీనమై ఉన్నాను. ప్రస్తుత పనిని మూల్యాంకనం చేయడానికి వచ్చినప్పుడు, దానిలో భాగంగా సౌందర్య పరిగణనలు, ఏది సొగసైనది మరియు ఏది కాదు. మరియు రోజువారీ స్థాయిలో, బహిరంగ ప్రశ్నలు పెద్ద పాత్ర పోషిస్తాయి. ఉదాహరణకు, ఒక విద్యార్థి కొన్ని ఫలితాల గ్రాఫ్‌తో నా వద్దకు వస్తాడు మరియు గ్రాఫ్ యొక్క కొన్ని వింత ప్రవర్తన ఎక్కడ నుండి వచ్చిందో అర్థం చేసుకోవడానికి మేము ప్రయత్నిస్తున్నాము. సాధారణంగా, మన పనిలో మనం ఇంకా అర్థం చేసుకోని విషయాలను అర్థం చేసుకోవడానికి నిరంతరం ప్రయత్నిస్తాము. 

లావాదేవీ జ్ఞాపకశక్తి

విటాలి: బహుశా మేము లావాదేవీ మెమరీ గురించి కొద్దిగా మాట్లాడవచ్చు?

మైఖేల్: నేను చాలా ప్రయత్నం చేసాను కాబట్టి కనీసం కొంచెం అయినా చెప్పడం విలువైనదని నేను భావిస్తున్నాను. ఇది నేను ఇతర ప్రచురణల కంటే ఎక్కువ ప్రచురణలను కలిగి ఉన్న అంశం. కానీ అదే సమయంలో, విచిత్రమేమిటంటే, లావాదేవీ జ్ఞాపకశక్తి గురించి నేను ఎల్లప్పుడూ చాలా సందేహాస్పదంగా ఉన్నాను. నా అభిప్రాయం లో, హెర్లిహి మరియు మోస్ ద్వారా వ్యాసం (M. Herlihy, J. E. B. Moss) దాని సమయానికి ముందే ప్రచురించబడింది. 1990ల ప్రారంభంలో, ప్రతిభావంతులైన ప్రోగ్రామర్లు మల్టీ-థ్రెడ్ డేటా స్ట్రక్చర్‌లపై పనిచేయడానికి లావాదేవీ మెమరీ సహాయపడుతుందని వారు సూచించారు, తద్వారా ఈ నిర్మాణాలను సాధారణ ప్రోగ్రామర్లు లైబ్రరీలుగా ఉపయోగించవచ్చు. అంటే, డౌగ్ లీ తన JSR 166 చేయడం కోసం ఇది ఒక సహాయంగా ఉంటుంది. అయితే లావాదేవీ మెమరీ బహుళ-థ్రెడ్ ప్రోగ్రామింగ్‌ను సులభతరం చేయడానికి ఉద్దేశించబడలేదు. కానీ ఇది 2000 ల ప్రారంభంలో, ఇది విస్తృతంగా వ్యాపించినప్పుడు సరిగ్గా ఎలా గుర్తించబడింది. సమాంతర ప్రోగ్రామింగ్ సమస్యను పరిష్కరించడానికి ఇది ఒక మార్గంగా ప్రచారం చేయబడింది. ఈ విధానం నాకు ఎప్పుడూ నిస్సహాయంగా అనిపించింది. లావాదేవీ మెమరీ సమాంతర డేటా నిర్మాణాలను వ్రాయడాన్ని సులభతరం చేస్తుంది. ఇది, ఆమె సాధించినది నాకు అనిపిస్తోంది. 

బహుళ-థ్రెడ్ కోడ్ రాయడం కష్టం గురించి

Алексей: చాలా ఆసక్తికరమైన. సాధారణ ప్రోగ్రామర్లు మరియు బహుళ-థ్రెడ్ కోడ్ వ్రాయగల వారి మధ్య ఒక నిర్దిష్ట అవరోధం ఉన్నట్లు కనిపిస్తోంది. గత సంవత్సరం, నేను కొన్ని అల్గారిథమిక్ ఫ్రేమ్‌వర్క్‌ను అమలు చేస్తున్న వ్యక్తులతో చాలాసార్లు మాట్లాడాను. ఉదాహరణకు, మార్టిన్ థామ్సన్‌తో పాటు మల్టీ-థ్రెడ్ లైబ్రరీలలో పనిచేస్తున్న ప్రోగ్రామర్‌లతో. (ఎడిటర్ యొక్క గమనిక: మార్టిన్ థాంప్సన్ చాలా ప్రసిద్ధ డెవలపర్, అతను రాశాడు Disruptor и Aeron. మరియు అతను కూడా కలిగి ఉన్నాడు నివేదిక మా జోకర్ 2015 సమావేశంలో, వీడియో రికార్డింగ్ YouTubeలో అందుబాటులో ఉంది. అతను అదే తెరిచింది ఈ సమావేశం కీనోట్ రికార్డింగ్ కూడా అందుబాటులో ఉంది). అల్గారిథమ్‌లను వేగంగా మరియు ఉపయోగించడానికి సులభమైనదిగా చేయడం ప్రధాన సవాలు. అంటే, ఈ అడ్డంకిని అధిగమించి, వీలైనంత ఎక్కువ మందిని ఈ ప్రాంతానికి ఆకర్షించడానికి ప్రయత్నిస్తున్నారు. దాని గురించి మీరు ఏమనుకుంటున్నారు?

మైఖేల్: ఇది మల్టీథ్రెడింగ్ యొక్క ప్రధాన సమస్య: సిస్టమ్ యొక్క సంక్లిష్టతను పెంచకుండా అధిక పనితీరును ఎలా సాధించాలి. 

Алексей: ఎందుకంటే వారు సంక్లిష్టతను నివారించడానికి ప్రయత్నించినప్పుడు, అల్గోరిథం తక్కువ సార్వత్రికమవుతుంది.

మైఖేల్: ఇక్కడ కీలకం సరిగ్గా రూపొందించబడిన సంగ్రహణలు. కంప్యూటర్ సిస్టమ్‌లకు ఫీల్డ్‌గా ఇది సాధారణంగా ప్రధాన విషయం అని నాకు అనిపిస్తోంది. బట్లర్ లాంప్సన్ ఈ పదాన్ని ఉపయోగించడానికి ఇష్టపడతాడు మరియు అతను మమ్మల్ని "సంగ్రహణల వ్యాపారులు" అని పిలుస్తాడు. సాధారణ సాంకేతికతలు నేడు లేవు. మేము ఉపయోగించే ప్రాసెసర్‌లలో 10 బిలియన్ ట్రాన్సిస్టర్‌లు ఉన్నాయి-సరళత ప్రశ్నార్థకం కాదు. అదే సమయంలో, ISA ప్రాసెసర్ కంటే చాలా సరళమైనది, ఎందుకంటే మేము అధిక పనితీరు మరియు సాపేక్షంగా సరళమైన ఇంటర్‌ఫేస్‌ను అందించడానికి చాలా కాలం పాటు పనిచేశాము. కానీ ఆమెతో ప్రతిదీ సజావుగా ఉండదు. ఇప్పుడు మార్కెట్‌లో వస్తున్న యాక్సిలరేటర్లదీ అదే సమస్య. ప్రశ్నలు తలెత్తుతాయి - GPU, ఎన్‌క్రిప్షన్ మెకానిజం, కంప్రెషన్, ట్రాన్స్‌కోడింగ్ మెకానిజం, లీనియర్ ఆల్జీబ్రా మెకానిజం లేదా మరింత సౌకర్యవంతమైన FPGA కోసం సరైన ఇంటర్‌ఫేస్‌ను ఎలా తయారు చేయాలి. సాధనాన్ని ఉపయోగించడానికి సులభమైన మరియు సంక్లిష్టతను దాచిపెట్టే ఇంటర్‌ఫేస్‌ను ఎలా సృష్టించాలి? ఇది దానిని వదిలించుకోదు, కానీ దానిని సాధారణ ప్రోగ్రామర్ నుండి దాచండి. 

Алексей: నేను అర్థం చేసుకున్నట్లుగా, నైరూప్యతలను అర్థం చేసుకోవడంలో మనకు ఇప్పటికీ అవరోధం ఉంది. మెమరీ మోడల్‌ను తీసుకుందాం; సైన్స్ అండ్ టెక్నాలజీ అభివృద్ధి చెందుతున్న మన దశలో, ఇది ప్రధాన సంగ్రహణలలో ఒకటి. దీనికి ధన్యవాదాలు, అన్ని ప్రోగ్రామర్లు రెండు సమూహాలుగా విభజించబడ్డారు: పెద్ద భాగం అర్థం చేసుకోని వారు, మరియు చిన్న భాగం అర్థం చేసుకున్నవారు లేదా వారు అర్థం చేసుకున్నారని భావించేవారు. 

మైఖేల్: ఇది మంచి ప్రశ్న - మనలో ఎవరైనా మెమరీ మోడల్‌ని నిజంగా అర్థం చేసుకున్నారా?

విటాలి: ముఖ్యంగా C++లో.

మైఖేల్: హాన్స్ బోహ్మ్‌తో ఎప్పుడైనా మాట్లాడండి. అతను నాకు తెలిసిన తెలివైన వ్యక్తులలో ఒకడు, మెమరీ మోడల్స్‌లో ప్రముఖ నిపుణుడు. అతనికి అర్థం కానివి చాలా ఉన్నాయని అతను వెంటనే మీకు చెప్తాడు. కానీ మనం సంగ్రహాల సమస్యకు తిరిగి వస్తే, నా అభిప్రాయం ప్రకారం, గత 30 సంవత్సరాలుగా మెమరీ నమూనాల రంగంలో అత్యంత ముఖ్యమైన ఆలోచన వ్యక్తీకరించబడింది. సరితా అడ్వే యొక్క వ్యాసంలో. (ఎడిటర్ యొక్క గమనిక: ప్రచురణల పూర్తి జాబితా అందుబాటులో ఉంది లింక్).

Алексей: నా ప్రశ్న: ఈ అవరోధం భావన యొక్క స్వభావం నుండి వచ్చిందా? 

మైఖేల్: లేదు. సరైన విధానంతో, మీరు అన్ని సంక్లిష్టతలను విజయవంతంగా దాచవచ్చు, అధిక పనితీరును పొందవచ్చు మరియు ప్రోగ్రామర్‌కు సాధారణ APIని అందించవచ్చు అనే నిర్ణయానికి సరిత వచ్చింది. మరియు మీరు ఈ APIని అనుసరిస్తే, మీరు స్థిరమైన స్థిరత్వాన్ని సాధించవచ్చు. ఇది సరైన మోడల్ అని నేను భావిస్తున్నాను. డేటా రేస్‌లు లేకుండా కోడ్‌ని వ్రాయండి మరియు సీక్వెన్షియల్ అనుగుణ్యతను పొందండి. వాస్తవానికి, రేసింగ్ యొక్క సంభావ్యతను తగ్గించడానికి, ప్రత్యేక ఉపకరణాలు అవసరమవుతాయి, కానీ అది మరొక విషయం. 

Владимир: మీ కెరీర్‌లో అకస్మాత్తుగా పరిష్కారం అనిపించిన సమస్య అకస్మాత్తుగా విపత్తుగా మారిన సందర్భాలు ఉన్నాయా లేదా ఈ సమస్య పరిష్కరించలేనిది అని తేలింది? ఉదాహరణకు, సిద్ధాంతంలో మీరు ఏదైనా సంఖ్యను కారకం చేయవచ్చు లేదా ఏదైనా సంఖ్య ప్రైమ్ కాదా అని నిర్ణయించవచ్చు. కానీ ఆచరణలో దీన్ని చేయడం కష్టం; ప్రస్తుత హార్డ్‌వేర్‌తో సంఖ్యలను కారకం చేయడం కష్టం. మీకు అలాంటిదేమైనా జరిగిందా?

మైఖేల్: నాకు అలాంటివి వెంటనే గుర్తుకు రావు. ఒక నిర్దిష్ట ప్రాంతంలో చేయడానికి ఏమీ లేదు అని నాకు అనిపించిన సందర్భాలు ఉన్నాయి, కానీ అక్కడ కొత్త మరియు ఆసక్తికరమైన ఏదో జరిగింది. ఉదాహరణకు, అపరిమిత క్యూయింగ్ ప్రాంతం ఇప్పటికే పరిపక్వతకు చేరుకుందని నేను అనుకున్నాను. MNS క్యూలో అనేక మెరుగుదలల తర్వాత, పెద్దగా ఏమీ జరగలేదు. ఆపై మోరిసన్ (ఆడమ్ మారిసన్) మరియు అఫెక్ (యెహుదా అఫెక్) కనుగొన్నారు LCRQ క్యూ. అపరిమిత బహుళ-థ్రెడ్ క్యూ సాధ్యమవుతుందని స్పష్టమైంది, ఇక్కడ చాలా సమయం క్లిష్టమైన మార్గంలో పొందడం మరియు పెంచడం సూచన మాత్రమే ఉంటుంది. మరియు ఇది మాగ్నిట్యూడ్ మెరుగైన పనితీరు యొక్క క్రమాన్ని సాధించడం సాధ్యం చేసింది. పొందడం మరియు పెంచడం చాలా ఉపయోగకరమైన విషయం అని మనకు తెలియదని కాదు. ఎరిక్ ఫ్రూడెన్తాల్ 1980ల చివరలో అల్ట్రాకంప్యూటర్‌పై అల్ట్రాకంప్యూటర్‌పై చేసిన పనిలో దీని గురించి వ్రాశాడు, అయితే ఇది పరిమిత క్యూల గురించి. మోరిసన్ మరియు అఫెక్ అన్‌బౌండ్డ్ క్యూలో ఫెచ్ అండ్ ఇంక్రిమెంట్‌ని ఉపయోగించగలిగారు.

కొత్త నిర్మాణాలు. లావాదేవీ జ్ఞాపకశక్తి యొక్క విజయం దగ్గరగా ఉందా?

Владимир: మీరు అల్గారిథమ్‌లకు ఉపయోగపడే కొత్త నిర్మాణ పరిష్కారాల కోసం చూస్తున్నారా? 

మైఖేల్: వాస్తవానికి, నేను అమలు చేయాలనుకుంటున్న అనేక అంశాలు ఉన్నాయి. 

Владимир: ఏ రకమైన, ఉదాహరణకు?

మైఖేల్: ముందుగా, Intel మరియు IBM ప్రాసెసర్‌లలో మా హార్డ్‌వేర్-స్థాయి లావాదేవీ మెమరీకి కొన్ని సాధారణ పొడిగింపులు. ప్రత్యేకించి, లావాదేవీలలో వెంటనే అందుబాటులో ఉన్న లావాదేవీలు కాని లోడ్ మరియు స్టోర్‌ని నేను కోరుకుంటున్నాను. అవి వెంటనే జరిగే-ముందు క్రమంలో లూప్‌లకు దారితీస్తాయి, కాబట్టి అవి కష్టంగా ఉంటాయి. కానీ మీరు సంగ్రహణ పొరలను నిర్వహిస్తే, లావాదేవీ జరుగుతున్నప్పుడు దాని వెలుపల మీరు చాలా ఆసక్తికరమైన విషయాలు చేయవచ్చు. దీన్ని అమలు చేయడం ఎంత కష్టమో నాకు తెలియదు, కానీ ఇది చాలా ఉపయోగకరంగా ఉంటుంది. 

మరొక ఉపయోగకరమైన విషయం రిమోట్ మెమరీ నుండి కాష్‌ను లోడ్ చేయడం. త్వరలో లేదా తరువాత ఇది పూర్తవుతుందని నేను భావిస్తున్నాను. ఈ సాంకేతికత విడదీయబడిన మెమరీతో సిస్టమ్‌ల సృష్టిని అనుమతిస్తుంది. ఒక ర్యాక్‌లో 100 టెరాబైట్‌ల నాన్‌వోలేటైల్ మెమరీని ఉంచడం సాధ్యమవుతుంది మరియు ప్రాసెసర్‌ల భౌతిక చిరునామా స్థలానికి అనుగుణంగా ఆ మెమరీలోని ఏ విభాగాలు ఉండాలో ఆపరేటింగ్ సిస్టమ్ డైనమిక్‌గా నిర్ణయిస్తుంది. క్లౌడ్ కంప్యూటింగ్‌కు ఇది చాలా ఉపయోగకరంగా ఉంటుంది, ఎందుకంటే ఇది అవసరమైన పనులకు పెద్ద మొత్తంలో మెమరీని అందించడానికి అనుమతిస్తుంది. ఎవరైనా చేస్తారని అనుకుంటున్నాను.

విటాలి: లావాదేవీ మెమరీ గురించి మాట్లాడటం ముగించడానికి, ఈ అంశంపై నాకు మరో ప్రశ్న ఉంది. లావాదేవీ మెమరీ చివరికి ప్రామాణిక బహుళ-థ్రెడ్ డేటా నిర్మాణాలను భర్తీ చేస్తుందా?

మైఖేల్: లేదు. లావాదేవీలు ఒక ఊహాజనిత యంత్రాంగం. ప్రోగ్రామింగ్ స్థాయిలో ఇవి పరమాణు తాళాలు, కానీ లోపల అవి ఊహాగానాలు. చాలా వరకు అంచనాలు సరిగ్గా ఉంటేనే ఇటువంటి అంచనాలు పని చేస్తాయి. అందువల్ల, థ్రెడ్‌లు ఒకదానితో ఒకటి సంకర్షణ చెందనప్పుడు లావాదేవీ మెమరీ బాగా పని చేస్తుంది మరియు మీరు పరస్పర చర్యలు లేవని నిర్ధారించుకోవాలి. కానీ థ్రెడ్‌ల మధ్య సందేశం ప్రారంభమైతే, లావాదేవీలు పెద్దగా ఉపయోగపడవు. నేను వివరిస్తాను, లావాదేవీలు మొత్తం అణు ఆపరేషన్ చుట్టూ చుట్టబడినప్పుడు మేము కేసు గురించి మాట్లాడుతున్నాము. అవి ఇప్పటికీ బహుళ-థ్రెడ్ డేటా నిర్మాణాల కోసం భాగాలుగా విజయవంతంగా ఉపయోగించబడతాయి. ఉదాహరణకు, మీకు మూడు పదాల CAS అవసరమైతే మరియు మీరు ఒకే సమయంలో ఇరవై థ్రెడ్‌లతో పనిచేసే నిజమైన మల్టీథ్రెడ్ అల్గోరిథం మధ్యలో మూడు చిన్న విషయాలను మల్టీథ్రెడ్ చేయాలి. సాధారణంగా, లావాదేవీలు ఉపయోగకరంగా ఉంటాయి, కానీ అవి బహుళ-థ్రెడ్ డేటా నిర్మాణాలను సరిగ్గా రూపొందించాల్సిన అవసరాన్ని తొలగించవు. 

నాన్-వోలటైల్ మెమరీ, ఆప్టేన్ DIMM, అల్ట్రా-ఫాస్ట్ పరికరాలు.

విటాలి: నేను చివరిగా మీ ప్రస్తుత పరిశోధన యొక్క అంశం గురించి మాట్లాడాలనుకుంటున్నాను: అస్థిర జ్ఞాపకశక్తి. సమీప భవిష్యత్తులో ఈ ప్రాంతంలో మనం ఏమి ఆశించవచ్చు? బహుశా ఇప్పటికే ఉన్న ఏవైనా సమర్థవంతమైన అమలుల గురించి మీకు తెలుసా? 

మైఖేల్: నేను హార్డ్‌వేర్ నిపుణుడిని కాదు, నేను వార్తల్లో చదివేది మరియు నా సహోద్యోగులు చెప్పేది మాత్రమే నాకు తెలుసు. ఇంటెల్ విక్రయిస్తుందని అందరూ ఇప్పటికే విన్నారు ఆప్టేన్ DIMM, ఇది డైనమిక్ RAM కంటే దాదాపు 3 రెట్లు రీడ్ లేటెన్సీని మరియు 10 రెట్లు రైట్ లేటెన్సీని కలిగి ఉంటుంది. అవి అతి పెద్ద వాల్యూమ్ వెర్షన్‌లలో త్వరలో అందుబాటులోకి రానున్నాయి. మీరు అనేక టెరాబైట్‌ల బైట్-అడ్రస్ చేయగల ర్యామ్‌తో ల్యాప్‌టాప్‌ని కలిగి ఉండవచ్చని అనుకోవడం హాస్యాస్పదంగా ఉంది. 10 సంవత్సరాలలో మేము ఈ కొత్త సాంకేతికతను ఉపయోగించాలని నిర్ణయించుకునే అవకాశం ఉంది, ఎందుకంటే మేము DRAM ను ఉపయోగిస్తాము - కేవలం వాల్యూమ్‌ను పెంచండి. కానీ శక్తి స్వాతంత్ర్యానికి ధన్యవాదాలు, మాకు పూర్తిగా కొత్త అవకాశాలు తెరవబడతాయి. బైట్-అడ్రస్ చేయగల వర్కింగ్ మెమరీ మరియు బ్లాక్-స్ట్రక్చర్డ్ పెర్సిస్టెంట్ మెమరీ మధ్య ఎటువంటి విభజన ఉండదు కాబట్టి మేము ప్రాథమికంగా నిల్వ స్టాక్‌ను మార్చవచ్చు. అందువల్ల, ఒక ప్రోగ్రామ్ నుండి మరొక ప్రోగ్రామ్‌కు బదిలీ చేయవలసిన ప్రతిదాన్ని బ్లాక్-స్ట్రక్చర్డ్ ఫైల్‌లలోకి మేము సీరియలైజ్ చేయనవసరం లేదు. దీని నుండి మనం ఆపరేటింగ్ సిస్టమ్‌లు, రన్‌టైమ్ పరిసరాలు మరియు పంపిణీ చేయబడిన డేటా స్టోర్‌లను ప్రభావితం చేసే అనేక ముఖ్యమైన సూత్రాలను పొందవచ్చు. ఈ ప్రాంతంలో పని చేయడం చాలా ఆసక్తికరంగా ఉంటుంది. వ్యక్తిగతంగా, ఇవన్నీ దేనికి దారితీస్తాయో అంచనా వేయడం నాకు కష్టం, కానీ ఇక్కడ సమస్యలు చాలా వినోదాత్మకంగా ఉన్నాయి. ఇక్కడ విప్లవాత్మక మార్పులు ఉండవచ్చు మరియు అవి మల్టీథ్రెడింగ్‌పై పని నుండి చాలా సహజంగా అనుసరిస్తాయి, ఎందుకంటే వైఫల్యం రికవరీ అనేది సిస్టమ్ యొక్క సాధారణ ఆపరేషన్ పక్కన "మల్టీథ్రెడింగ్" ప్రక్రియ. 

నేను ప్రస్తుతం పని చేస్తున్న రెండవ ప్రధాన అంశం ఏమిటంటే, అత్యంత వేగవంతమైన పరికరాలను నిర్వహించడం మరియు సిస్టమిక్ పాలసీ నియంత్రణతో యూజర్‌స్పేస్ నుండి పరికరాలకు సురక్షిత ప్రాప్యత. ఇటీవలి సంవత్సరాలలో, పరికరానికి యాక్సెస్‌ను యూజర్‌స్పేస్‌కు తరలించే ధోరణి ఉంది. TCP-IP కెర్నల్ స్టాక్ ప్రతి 5 మైక్రోసెకన్‌లకు కొత్త ప్యాకెట్ అవసరమయ్యే నెట్‌వర్క్ ఇంటర్‌ఫేస్ పైన పని చేయనందున ఇది జరుగుతుంది; ఇది కేవలం కొనసాగదు. అందువల్ల, తయారీదారులు పరికరాలకు ప్రత్యక్ష ప్రాప్యతను అందిస్తారు. కానీ దీని అర్థం ఆపరేటింగ్ సిస్టమ్ ప్రక్రియపై నియంత్రణను కోల్పోతుంది మరియు పోటీ అనువర్తనాల కోసం పరికరానికి సరైన ప్రాప్యతను అందించదు. ఈ లోపాన్ని నివారించవచ్చని మా పరిశోధన బృందం విశ్వసిస్తోంది. మేము ఈ నెల USENIX ATCలో దీనిపై కథనాన్ని అందిస్తాము. దీర్ఘకాల బైట్-అడ్రస్ చేయగల పెర్సిస్టెంట్ మెమరీ, సారాంశంలో, యూజర్‌స్పేస్‌లో యాక్సెస్ చేయాల్సిన అల్ట్రా-ఫాస్ట్ I/O ఉన్న పరికరం కనుక ఇది పట్టుదలతో పని చేయడానికి సంబంధించినది. ఈ పరిశోధన మైక్రోకెర్నల్‌లు, ఎక్సోకెర్నెల్‌లు మరియు OS కెర్నల్ నుండి యూజర్‌స్పేస్‌కు సురక్షితంగా కార్యాచరణను తరలించడానికి ఇతర సాంప్రదాయ ప్రయత్నాలకు కొత్త విధానాలను సాధ్యం చేస్తుంది. 

Владимир: బైట్-అడ్రస్ చేయగల మెమరీ చాలా బాగుంది, కానీ భౌతిక పరిమితి ఉంది - కాంతి వేగం. పరికరంతో పరస్పర చర్య చేస్తున్నప్పుడు అనివార్యంగా ఆలస్యం అవుతుందని దీని అర్థం. 

మైఖేల్: కచ్చితముగా.

Владимир: కొత్త లోడ్‌లను తట్టుకునేంత సామర్థ్యం ఉంటుందా?

మైఖేల్: ఇది అద్భుతమైన ప్రశ్న, కానీ నాకు సమాధానం చెప్పడం కష్టం. మెమరీలో ప్రాసెస్ చేయాలనే ఆలోచన కొంతకాలంగా ఉంది, ఇది చాలా ఆసక్తికరంగా ఉంటుంది, కానీ చాలా క్లిష్టంగా ఉంటుంది. నేను ఈ ప్రాంతంలో పని చేయలేదు, కానీ అక్కడ కొన్ని ఆవిష్కరణలు జరిగితే చాలా బాగుంటుంది. నేను జోడించడానికి ఇంకేమీ లేదని నేను భయపడుతున్నాను. 

Владимир: ఇంకొక సమస్య ఉంది. కొత్త, గణనీయంగా పెద్ద మొత్తంలో RAM CPUకి సరిపోవడం అసాధ్యం. అందువల్ల, భౌతిక పరిమితుల కారణంగా, ఈ RAM తప్పనిసరిగా వేరుచేయబడాలి. 

మైఖేల్: ఇది అన్ని ఇంటిగ్రేటెడ్ సర్క్యూట్ల ఉత్పత్తిలో లోపాల సంఖ్యపై ఆధారపడి ఉంటుంది. పూర్తిగా లోపాలు లేకుండా సెమీకండక్టర్ పొరలను సృష్టించడం సాధ్యమైతే, దాని నుండి మొత్తం మైక్రో సర్క్యూట్‌ను తయారు చేయడం సాధ్యమవుతుంది. కానీ ఇప్పుడు మైక్రో సర్క్యూట్‌లను తపాలా స్టాంపుల కంటే పెద్దదిగా చేయడం ఎలాగో మనకు తెలియదు. 

Владимир: కానీ మేము ఇప్పటికీ సెంటీమీటర్ల గురించి భారీ పరిమాణాల గురించి మాట్లాడుతున్నాము. ఇది అనివార్యంగా జాప్యంపై ప్రభావం చూపుతుంది. 

మైఖేల్: అవును. కాంతి వేగం గురించి మీరు ఏమీ చేయలేరు. 

Владимир: దురదృష్టవశాత్తు. 

తదుపరి పెద్ద ట్రెండ్. ద్వంద్వ డేటా నిర్మాణాలు. హైడ్రా.

విటాలి: నేను అర్థం చేసుకున్నంత వరకు, మీరు చాలా త్వరగా కొత్త ట్రెండ్‌లను క్యాచ్ చేస్తారు. మీరు లావాదేవీ మెమరీలో పని చేసిన మొదటి వ్యక్తులలో ఒకరు మరియు అస్థిరత లేని మెమరీలో పని చేసిన మొదటి వారిలో ఒకరు. తదుపరి పెద్ద ట్రెండ్ ఏది అని మీరు అనుకుంటున్నారు? లేదా బహుశా ఇది రహస్యమా?

మైఖేల్: నిజం చెప్పాలంటే, నాకు తెలియదు. ఏదైనా కొత్తది వచ్చినప్పుడు నేను గమనించగలనని ఆశిస్తున్నాను. నా స్వంతంగా ఏదైనా కొత్త ఫీల్డ్‌ని కనిపెట్టే అదృష్టం నాకు లేదు, కానీ నేను కొన్ని అదృష్టాన్ని కలిగి ఉన్నాను మరియు ఇతరులు సృష్టించిన కొత్త రంగాలలో చాలా త్వరగా పని చేయడం ప్రారంభించగలిగాను. నేను భవిష్యత్తులో దీన్ని చేయగలనని ఆశిస్తున్నాను.

Алексей: ఈ ఇంటర్వ్యూలో చివరి ప్రశ్న హైడ్రాలో మీ పనితీరు మరియు పాఠశాలలో మీ కార్యకలాపాల గురించి ఉంటుంది. నేను సరిగ్గా అర్థం చేసుకున్నట్లయితే, పాఠశాలలో రిపోర్ట్ బ్లాక్-ఫ్రీ అల్గారిథమ్‌ల గురించి మరియు కాన్ఫరెన్స్‌లో డబుల్ డేటా స్ట్రక్చర్‌ల గురించి ఉంటుంది. ఈ నివేదికల గురించి మీరు కొన్ని మాటలు చెప్పగలరా?

మైఖేల్: పాక్షికంగా, ఈ ఇంటర్వ్యూలో మేము ఇప్పటికే మీతో ఈ అంశాలపై చర్చించాము. ఇది నా విద్యార్థి బిల్ షెరర్‌తో నేను చేసిన పని గురించి. అతను దానిపై ఒక థీసిస్ రాశాడు మరియు డౌగ్ లీ కూడా దానికి సహకరించాడు మరియు అది చివరికి జావా లైబ్రరీలోని బహుళ-థ్రెడ్ సింక్రోనస్ క్యూలలో భాగమైంది. డేటా స్ట్రక్చర్‌ను నిరోధించకుండా చదవడం మరియు వ్రాయడం జరుగుతుందని అనుకుందాం, అంటే, ప్రతి ఆపరేషన్ క్లిష్టమైన మార్గంలో పరిమిత సంఖ్యలో సూచనలను కలిగి ఉంటుంది. మీరు ఖాళీ కంటైనర్ నుండి డేటాను తీసివేయడానికి ప్రయత్నించినా లేదా ఈ కంటైనర్‌లో లేని నిర్దిష్ట డేటాను తీసివేయడానికి ప్రయత్నించినా, ఇది చేయలేమని మీకు వెంటనే తెలియజేయబడుతుంది. థ్రెడ్‌కు నిజంగా ఈ డేటా అవసరమైతే ఈ ప్రవర్తన ఆమోదయోగ్యం కాకపోవచ్చు. అప్పుడు గుర్తుకు వచ్చే మొదటి విషయం ఏమిటంటే, అవసరమైన డేటా కనిపించిందా అని నిరంతరం అడిగే లూప్‌ను సృష్టించడం. కానీ అప్పుడు ప్రతి ఒక్కరికీ జోక్యం ఉంటుంది. అదనంగా, ఈ విధానంతో, మీరు 10 నిమిషాలు వేచి ఉండవచ్చు, ఆపై కొన్ని ఇతర థ్రెడ్ వస్తాయి, మరియు ఇది అనుకోకుండా ముందుగా అవసరమైన డేటాను అందుకుంటుంది. ద్వంద్వ డేటా నిర్మాణాలకు ఇప్పటికీ తాళాలు లేవు, కానీ అవి థ్రెడ్‌లను సరిగ్గా వేచి ఉండటానికి అనుమతిస్తాయి. "డబుల్" అనే పదం అంటే నిర్మాణంలో డేటా లేదా డేటా కోసం అభ్యర్థనలు ఉంటాయి, వాటిని యాంటీ-డేటా అని పిలుద్దాం. కాబట్టి మీరు ఖాళీ కంటైనర్ నుండి ఏదైనా తిరిగి పొందడానికి ప్రయత్నిస్తే, బదులుగా ఒక అభ్యర్థన కంటైనర్‌లో ఉంచబడుతుంది. ఇప్పుడు థ్రెడ్ ఎవరికీ అంతరాయం కలిగించకుండా అభ్యర్థన కోసం వేచి ఉండగలదు. అదనంగా, డేటా నిర్మాణం అభ్యర్థనలకు ప్రాధాన్యతలను కేటాయిస్తుంది, తద్వారా స్వీకరించినప్పుడు, అది వాటిని సరైన వ్యక్తికి పంపుతుంది. ఫలితంగా నాన్-లాకింగ్ మెకానిజం, ఇది ఇప్పటికీ అధికారిక వివరణ మరియు ఆచరణలో మంచి పనితీరును కలిగి ఉంది. 

Алексей: ఈ డేటా నిర్మాణం నుండి మీ అంచనాలు ఏమిటి? ఇది అన్ని సాధారణ సందర్భాలలో పనితీరును మెరుగుపరుస్తుందా లేదా నిర్దిష్ట పరిస్థితులకు బాగా సరిపోతుందా? 

మైఖేల్: మొదట, మీకు లాక్ లేకుండా కంటైనర్ అవసరమైతే ఇది ఉపయోగకరంగా ఉంటుంది మరియు రెండవది, మీరు దానిలో లేని కంటైనర్ నుండి డేటాను తిరిగి పొందవలసిన పరిస్థితిలో వేచి ఉండాలి. నాకు తెలిసినంత వరకు, ఈ రెండు షరతులు నెరవేరినప్పుడు మా ఫ్రేమ్‌వర్క్ సరైన ప్రవర్తనను అందిస్తుంది. అందువల్ల, ఈ సందర్భాలలో నేను దానిని ఉపయోగించమని సిఫార్సు చేస్తున్నాను. లాక్‌లెస్ డేటా స్ట్రక్చర్‌ల యొక్క ప్రధాన ప్రయోజనం ఏమిటంటే అవి పనితీరు సమస్యలను నివారిస్తాయి. మరియు డేటా ఒక థ్రెడ్ నుండి మరొకదానికి బదిలీ చేయబడితే అనేక అల్గారిథమ్‌లలో వేచి ఉండటం చాలా ముఖ్యం.

విటాలి: నేను స్పష్టం చేస్తాను: మీరు పాఠశాలలో మరియు కాన్ఫరెన్స్‌లో ఒకే విషయం గురించి మాట్లాడతారా?

మైఖేల్: పాఠశాల వద్ద నేను మాట్లాడతాను సాధారణంగా బహుళ-థ్రెడ్ డేటా నిర్మాణాల గురించి, పాఠం ప్రారంభంలో వివరించిన ప్రాథమిక సూత్రాలు. థ్రెడ్‌లు అంటే ఏమిటో ప్రేక్షకులకు తెలుసునని మరియు తాళాలతో సుపరిచితం అని నేను అనుకుంటాను. ఈ ప్రాథమిక జ్ఞానం ఆధారంగా, నేను లాక్-ఫ్రీ డేటా స్ట్రక్చర్‌ల గురించి మాట్లాడతాను. నేను ఈ ప్రాంతంలోని అత్యంత ముఖ్యమైన సమస్యల యొక్క అవలోకనాన్ని ఇస్తాను, మెమరీ మేనేజ్‌మెంట్ వంటి అంశాలపై తాకడం. MS క్యూ కంటే సంక్లిష్టమైనది ఏదైనా ఉంటుందని నేను అనుకోను.

Алексей: మీరు పాఠశాలలో మీ తరగతి చివరిలో ద్వంద్వ డేటా నిర్మాణాల గురించి బోధించాలనుకుంటున్నారా?

మైఖేల్: నేను వాటిని ప్రస్తావిస్తాను, కానీ నేను వాటిపై ఎక్కువ సమయం వెచ్చించను. హైడ్రా నివేదికను వారికి అంకితం చేయనున్నారు. ఇది చివరికి జావాలోకి ప్రవేశించిన ప్రాజెక్ట్‌ను కవర్ చేస్తుంది, అలాగే LCRQ క్యూ యొక్క డ్యూయల్ వేరియంట్‌ను రూపొందించడానికి జో ఇజ్రాయెల్‌విచ్‌తో కలిసి పని చేస్తుంది మరియు డ్యూయల్ డేటా స్ట్రక్చర్‌ల కోసం దాదాపు సార్వత్రిక రూపకల్పనను సృష్టిస్తుంది.

Алексей: కాబట్టి పాఠశాలలో ఉపన్యాసం ప్రారంభకులకు మరియు హైడ్రాపై డబుల్ డేటా స్ట్రక్చర్‌లపై ఉపన్యాసం సిఫార్సు చేయబడుతుందా - ఇప్పటికే కొంత అనుభవం ఉన్న వ్యక్తుల కోసం?

మైఖేల్: నేను తప్పుగా ఉంటే నన్ను సరిదిద్దండి, అయితే హైడ్రాలోని ప్రేక్షకులు చాలా మంది జావా నిపుణులు మరియు బహుళ-థ్రెడ్ ప్రోగ్రామింగ్‌లో ప్రత్యేకంగా పాల్గొనని సాధారణ వ్యక్తులతో సహా చాలా వైవిధ్యంగా ఉంటారు. 

విటాలి: అవును, అది నిజమే.

Алексей: కనీసం మేము ఆశిస్తున్నాము.

మైఖేల్: ఈ సందర్భంలో, మేము ఈ ఇంటర్వ్యూని ప్రారంభించిన అదే సమస్యను నేను ఎదుర్కొంటాను: సాంకేతిక వివరాలతో తగినంత రిచ్ మరియు శ్రోతలందరికీ అందుబాటులో ఉండేలా నివేదికను ఎలా తయారు చేయాలి.

విటాలి: ఉపన్యాసాలు ఇచ్చిన విధంగానే నివేదిక ఇస్తారా? అంటే ప్రేక్షకులతో మాట్లాడి పరిస్థితులకు తగ్గట్టు?

మైఖేల్: నివేదికలో స్లయిడ్‌లు ఉంటాయి కాబట్టి అది ఆ విధంగా పని చేయదని నేను భయపడుతున్నాను. శ్రోతలు ప్రారంభంలో వివిధ భాషలు మాట్లాడేటప్పుడు స్లయిడ్‌లు ముఖ్యమైనవి. చాలా మందికి నన్ను ఇంగ్లీషులో అర్థం చేసుకోవడం కష్టంగా ఉంటుంది, ముఖ్యంగా నేను చాలా త్వరగా మాట్లాడితే. నేను ఈ అంశాలను ఎంచుకున్నాను ఎందుకంటే పీటర్ కుజ్నెత్సోవ్ SPTDC స్కూల్‌లో లాక్-ఫ్రీ డేటా స్ట్రక్చర్‌ల గురించి మాట్లాడమని నన్ను అడిగారు; ఆపై నాకు జావా యూజర్ గ్రూప్ కాన్ఫరెన్స్ కోసం రిపోర్ట్ అవసరం, మరియు నేను జావా ప్రోగ్రామర్‌లకు ప్రత్యేకంగా ఆసక్తిని కలిగించేదాన్ని ఎంచుకోవాలనుకున్నాను. జావా లైబ్రరీలో నేను ఒక విధంగా లేదా మరొక విధంగా చేయి చేసుకున్న వాటి గురించి మాట్లాడటం సులభమైన మార్గం. 

Алексей: హైడ్రాలోని ప్రేక్షకులకు లాక్-ఫ్రీ ప్రోగ్రామింగ్ గురించి ఇప్పటికే కొంత తెలుసని మరియు బహుశా ఈ ప్రాంతంలో కొంత అనుభవం ఉందని మేము అనుకుంటాము. అయితే ఇది ఊహ మాత్రమే; సదస్సులోనే పరిస్థితి మరింత స్పష్టమవుతుంది. ఏమైనా, మీ సమయానికి ధన్యవాదాలు. ఇంటర్వ్యూ మా పాఠకులకు చాలా ఆసక్తికరంగా ఉంటుందని నేను ఖచ్చితంగా అనుకుంటున్నాను. చాలా ధన్యవాదాలు!

విటాలి: ధన్యవాదాలు. 

మైఖేల్: సెయింట్ పీటర్స్‌బర్గ్‌లో మిమ్మల్ని కలవడానికి నేను సంతోషిస్తాను. 

Алексей: మనకి కూడా అందమైన నగరం ఉంది. మీరు ఎప్పుడైనా ఇక్కడకు వచ్చారా?

మైఖేల్: లేదు, నేను ఎప్పుడూ రష్యాకు వెళ్ళలేదు. కానీ సెయింట్ పీటర్స్‌బర్గ్ నేను ఇంకా వెళ్లని ప్రదేశాల జాబితాలో ఎల్లప్పుడూ ఉంది, కానీ నేను నిజంగా ఎక్కడికి వెళ్లాలనుకుంటున్నాను, కాబట్టి నేను ఆహ్వానం గురించి చాలా సంతోషంగా ఉన్నాను. 

Алексей: మార్గం ద్వారా, మేము స్పీకర్ల కోసం విహారయాత్రల కార్యక్రమాన్ని కలిగి ఉంటాము. ఇంటర్వ్యూకి చాలా ధన్యవాదాలు, మరియు మంచి రోజు!

సెయింట్ పీటర్స్‌బర్గ్‌లో జూలై 2019-11, 12లో జరిగే హైడ్రా 2019 సమావేశంలో మీరు మైఖేల్‌తో మీ సంభాషణను కొనసాగించవచ్చు. అతను నివేదికతో వస్తాడు "ద్వంద్వ డేటా నిర్మాణాలు". టిక్కెట్లు కొనుగోలు చేయవచ్చు అధికారిక వెబ్‌సైట్‌లో.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి