"تجرباتي نتيجا صرف اشاعت لاء آهن، ڪم جا حقيقي مقصد جمالياتي آهن." مائيڪل سکاٽ سان وڏو انٽرويو

"تجرباتي نتيجا صرف اشاعت لاء آهن، ڪم جا حقيقي مقصد جمالياتي آهن." مائيڪل سکاٽ سان وڏو انٽرويو مائيڪل سکاٽ - 34 سالن تائين روچسٽر يونيورسٽي ۾ ڪمپيوٽر سائنس جي پروفيسر جي حيثيت سان، ۽ پنهنجي گهر واري يونيورسٽي وڪوسنسن-ميڊيسن ۾ پنجن سالن تائين ڊين رهيو. هو شاگردن کي متوازي ۽ ورهايل پروگرامنگ ۽ ٻولي ڊيزائن بابت تحقيق ۽ سيکاريندو آهي.

دنيا مائيڪل کي درسي ڪتاب مان ڄاڻي ٿي "پروگرامنگ ٻولي عمليات"، ڪم بابت ڇا؟ "شيئر ٿيل ميموري ملٽي پروسيسرز تي اسپيبلبل هم وقت سازي لاءِ الگورتھم" ڊسٽرڪٽ ڪمپيوٽنگ جي ميدان ۾ سڀ کان مشهور مان هڪ طور Dijkstra انعام حاصل ڪيو. توهان شايد هن کي ڄاڻو ٿا ته هن کي بلڪل الگورتھم جي ليکڪ طور مائيڪل- سکاٽ.

ڊگ لي سان گڏ، هن غير بلاڪنگ الگورتھم ۽ هم وقت ساز قطار ٺاهيا جيڪي جاوا لائبريرين کي طاقت ڏين ٿيون. عمل درآمد "ٻئي ڊيٽا جي جوڙجڪ" JavaSE 6 ۾ 10 ڀيرا بهتر ڪارڪردگي ThreadPoolExecutor.

مضمون:

  • شروعاتي ڪيريئر، روچسٽر يونيورسٽي. پروجيڪٽ چارليٽ، لنڪس ٻولي؛
  • IEEE Scalable Coherent Interface، MCS لاڪنگ؛
  • هڪ هميشه بدلجندڙ دنيا ۾ بقا؛
  • ڇا شاگرد بيوقوف ٿي رهيا آهن؟ عالمي رجحانات، بين الاقواميت؛
  • شاگردن سان مؤثر ڪم؛
  • نون ڪورسز ۽ ڪتابن جي تياري کي ڪيئن جاري رکڻ؛
  • ڪاروبار ۽ اڪيڊمي جي وچ ۾ رابطا؛
  • خيالن جو عملي نفاذ. MCS، MS، CLH، JSR 166، ڊگ لي ۽ وڌيڪ سان ڪم ڪرڻ؛
  • ٽرانزيڪشن ياداشت؛
  • جديد فن تعمير. ٽرانزيڪشنل ياداشت جي فتح ويجهو آهي؛
  • غير مستحڪم ياداشت، Optane DIMM، الٽرا فاسٽ ڊوائيسز؛
  • ايندڙ وڏو رجحان. ٻٽي ڊيٽا جي جوڙجڪ. هائيڊرا.

انٽرويو پاران ڪيل آهي:

Vitaly Aksenov - هن وقت IST آسٽريا ۾ هڪ پوسٽ ڊڪ ۽ ITMO يونيورسٽي ۾ ڪمپيوٽر ٽيڪنالاجي جي ڊپارٽمينٽ جو ميمبر. نظريي جي ميدان ۾ تحقيق ڪري ٿو ۽ مقابلي واري ڊيٽا جي جوڙجڪ جي مشق. IST ۾ ڪم ڪرڻ کان اڳ، هن پنهنجي پي ايڇ ڊي پيرس ڊيڊروٽ يونيورسٽي ۽ ITMO يونيورسٽي مان پروفيسر پيٽر ڪزنٽسوف جي نگراني هيٺ حاصل ڪئي.

Alexey Fedorov - JUG Ru گروپ ۾ پروڊيوسر، هڪ روسي ڪمپني جيڪا ڊولپرز لاءِ ڪانفرنسون منظم ڪري ٿي. Alexey 50 کان وڌيڪ ڪانفرنسن جي تياري ۾ حصو ورتو، ۽ سندس ريزوم ۾ سڀ ڪجهه شامل آهي ڊولپمينٽ انجنيئر جي پوزيشن کان وٺي Oracle (JCK، Java Platform Group) ۾ هڪ ڊولپر جي پوزيشن تائين Odnoklassniki.

Vladimir Sitnikov - انجنيئر Netcracker تي. NetCracker OS جي ڪارڪردگي ۽ اسڪيبلٽي تي ڏهه سال ڪم، ٽيليڪ آپريٽرز پاران استعمال ٿيل سافٽ ويئر نيٽ ورڪ ۽ نيٽورڪ سامان جي انتظام جي عمل کي خودڪار ڪرڻ لاء. جاوا ۽ Oracle ڊيٽابيس ڪارڪردگي مسئلن ۾ دلچسپي. سرڪاري PostgreSQL JDBC ڊرائيور ۾ درجن کان وڌيڪ ڪارڪردگي سڌارن جو ليکڪ.

شروعاتي ڪيريئر، روچسٽر يونيورسٽي. چارليٽ پروجيڪٽ، لنڪس ٻولي.

Алексей: شروع ڪرڻ سان، مان توهان کي ٻڌائڻ چاهيان ٿو ته روس ۾ اسان سڀ واقعي ڪمپيوٽر سائنس، ڊيٽا سائنس ۽ الگورٿم سان پيار ڪندا آهيون. اهو بلڪل فحش آهي. اسان سڀ ڪجهه پڙهيو آهي ڪتاب Cormen، Leiserson ۽ Rivest پاران. تنهن ڪري، ايندڙ ڪانفرنس، اسڪول ۽ هي انٽرويو پاڻ کي تمام گهڻو مشهور ٿيڻ گهرجي. اسان شاگردن، پروگرامرز، ۽ ڪميونٽي جي ميمبرن کان هن انٽرويو لاء ڪيترائي سوال حاصل ڪيا، تنهنڪري اسان هن موقعي لاء تمام شڪرگذار آهيون. ڇا ڪمپيوٽر سائنس کي آمريڪا ۾ ساڳيو پيار ملي ٿو؟

ميٽر: اسان جو ميدان ايترو ته متنوع آهي، ان ۾ ڪيتريون ئي هدايتون آهن، ۽ اهو سماج تي مختلف طريقن سان اثر انداز ٿئي ٿو، جو مون لاءِ توهان کي قطعي جواب ڏيڻ مشڪل آهي. پر حقيقت اها آهي ته هن گذريل 30 سالن ۾ ڪاروبار، صنعت، فن ۽ سماج ۾ عام طور تي زبردست تبديليون آنديون آهن.

Vitali: اچو ته شروع ڪريون ڪجھ پري سان. ڪيترن ئي يونيورسٽين ۾ هڪ خاص علائقي ۾ specialization وانگر ڪجهه آهي. ڪارنيگي ميلن يونيورسٽي لاءِ هي متوازي ڪمپيوٽنگ آهي، MIT لاءِ اها آهي ڪرپٽ گرافي، روبوٽس ۽ ملٽي ٿريڊنگ. ڇا روچسٽر يونيورسٽي ۾ اهڙي ڪا خاص صلاحيت آهي؟

ميٽر: ايماندار ٿيڻ لاء، مان چوان ٿو ته CMU ۽ MIT سڀني علائقن ۾ ماهر. اسان جو ڊپارٽمينٽ هميشه مصنوعي ذهانت تي تمام گهڻو ڌيان ڏنو آهي. اسان لاءِ ڪم ڪندڙ اڌ ماڻهو AI يا انساني ڪمپيوٽر جي رابطي ۾ مصروف آهن - اهو حصو ٻين شعبن جي ڀيٽ ۾ وڌيڪ آهي، ۽ هميشه ائين ئي رهيو آهي. پر جڏهن مان يونيورسٽيءَ ۾ هئس، ته مون وٽ AI ۾ ڪو به ڪورس نه هو، ۽ مون ڪڏهن به هن فيلڊ ۾ ڪم نه ڪيو. تنهن ڪري منهنجو ڊپارٽمينٽ هڪ مسئلي ۾ ماهر آهي جنهن سان مون کي ڪجهه به ناهي. اطمينان جي ڳالهه اها آهي ته اسان جي ڊپارٽمينٽ لاءِ ٻيو اهم مسئلو متوازي ۽ ملٽي ٿريڊ پروگرامنگ آهي، يعني منهنجي اسپيشلائيزيشن.

Vitali: توهان ڪمپيوٽر سائنس ۾ ان وقت ڪم ڪرڻ شروع ڪيو جڏهن ملٽي ٿريڊ پروگرامنگ جو شعبو اڀري رهيو هو. توهان جي اشاعتن جي فهرست ڏيکاري ٿي ته توهان جا پهريان ڪم ڪافي وسيع مسئلن سان حل ڪيا ويا آهن: ميموري مئنيجمينٽ ان ۾ ملٽي-ٽيڊڊ سسٽم، ورهايل فائل سسٽم، آپريٽنگ سسٽم. اهڙي versatility ڇو؟ ڇا توهان تحقيقي ڪميونٽي ۾ پنهنجي جڳهه ڳولڻ جي ڪوشش ڪئي آهي؟

ميٽر: هڪ شاگرد جي حيثيت ۾، مون شرڪت ڪئي چارليٽ پروجيڪٽ وڪوسنسن يونيورسٽي ۾، جتي پهريون ورهايل آپريٽنگ سسٽم مان هڪ ترقي ڪئي وئي هئي. اتي مون رافيل فينڪل سان گڏ ڪم ڪيو (Raphael Finkel۽ مارون سليمان (مارون سليمان). منهنجو مقالو ورهايل سسٽم لاءِ سسٽم سافٽ ويئر جي ٻولي جي ترقي لاءِ وقف ڪيو ويو - هاڻي هرڪو ان جي باري ۾ وساري چڪو آهي، ۽ خدا جو شڪر آهي. مون لينڪس پروگرامنگ ٻولي ٺاھيو آھي، جنھن جو مقصد ھو ته آسانيءَ سان سرور ٺاھڻ لاءِ آسانيءَ سان جوڙيل ورهايل آپريٽنگ سسٽم. ان وقت کان وٺي آئون بنيادي طور تي آپريٽنگ سسٽم ۾ شامل هو، مون سمجهيو ته منهنجو ڪيريئر بنيادي طور تي انهن سان ڳنڍيل هوندو. پر روچسٽر هڪ تمام ننڍڙي يونيورسٽي هئي ۽ ان ڪري اتي جا مختلف گروهه هڪ ٻئي سان تمام ويجها لاڳاپا هئا. مون سان ڳالهائڻ لاءِ اتي هڪ درجن ٻيا آپريٽنگ سسٽم وارا ماڻهو نه هئا، تنهن ڪري منهنجا سڀئي رابطا انهن ماڻهن سان هئا جيڪي مڪمل طور تي مختلف علائقن ۾ ڪم ڪندا هئا. مون کي واقعي مزو آيو، آل رائونڊر ٿيڻ مون لاءِ وڏو فائدو آهي. جيڪڏهن اسان خاص طور تي گھڻن موضوعن واري ڊيٽا جي جوڙجڪ ۽ هم وقت سازي الگورتھم بابت ڳالهايون ٿا، ته پوء مون انهن تي مڪمل طور تي حادثي سان ڪم ڪرڻ شروع ڪيو.

IEEE Scalable Coherent Interface، MCS لاڪنگ.

Vitali: ڇا توھان مون کي ان بابت ڪجھ وڌيڪ ٻڌائي سگھو ٿا؟

ميٽر: هيءَ هڪ عجيب ڪهاڻي آهي، جيڪا مان سڀني کي ٻڌائڻ کان ڪڏهن به نه ٿڪندو آهيان. اهو هڪ ڪانفرنس ۾ ٿيو ASPLOS بوسٽن ۾ - اهو 80 جي آخر ۾ يا 90 جي شروعات ۾ هو. جان ميلر-ڪرومي (جان ميلر-ڪرومي)، اسان جي فيڪلٽي جو گريجوئيٽ. مان هن کي ڄاڻان ٿو، پر اسان اڳ ۾ گڏيل تحقيق نه ڪئي هئي. ميري ورنون (ميري ورنون) وڪوسنسن مان هڪ ملٽي پروسيسر سسٽم بابت ڳالهايو جيڪي اهي وڪوسنسن ۾ ترقي ڪري رهيا هئا: وڪوسنسن ملٽي ڪيوب. هن ملٽي ڪيوب وٽ هارڊويئر ليول تي هڪ هم وقت سازي جو ميڪنزم هو جنهن کي Q on Sync Bit سڏيو ويندو هو، ۽ بعد ۾ ان کي Q on Lock Bit جو نالو ڏنو ويو ڇاڪاڻ ته اهو آواز ڪولبي پنير جهڙو هو، جيڪو هڪ pun هو. جيڪڏھن توھان دلچسپي رکو ٿا ملٽي ٿريڊنگ ميڪانيزم ۾، توھان کي شايد خبر آھي ته Colby آخرڪار IEEE Scalable Coherent Interface معيار لاءِ هم وقت سازي انجڻ بڻجي ويو. اهو هڪ لاڪنگ ميڪنزم هو جيڪو هارڊويئر جي سطح تي هڪ ڪيش کان ٻئي تائين پوائنٽرز ٺاهي ٿو ته جيئن هر تالا هولڊر کي خبر پوي ته اهو ڪير آهي. جڏهن جان ۽ مون اهو ٻڌو، اسان هڪ ٻئي ڏانهن ڏٺو ۽ چيو ته: هي هارڊويئر سطح تي ڇو؟ ڇا ساڳي شيءِ compare-and-swap استعمال ڪندي حاصل نه ٿي ڪري سگھجي؟ اسان ڪلاس روم ۾ پيل نوٽ بڪ مان هڪ ورتو ۽ ان تي لکيل هو MCS بلاڪنگ، جڏهن ته مريم پنهنجي رپورٽ جاري رکي. ان کان پوء، اسان ان تي عمل ڪيو، تجربو ڪيو، خيال ڪامياب ٿي ويو، ۽ اسان آرٽيڪل شايع ڪيو. ان وقت، مون لاء، هي موضوع صرف هڪ مزيدار پريشاني هئي، جنهن کان پوء مون کي آپريٽنگ سسٽم ڏانهن موٽڻ جو ارادو ڪيو. پر پوءِ ساڳين خطن سان گڏ هڪ ٻيو مسئلو پيدا ٿيو، ۽ آخرڪار هم وقت سازي، ملٽي ٿريڊنگ، ۽ ڊيٽا ڍانچو منهنجي خاصيت بڻجي وئي. جئين توهان ڏسي سگهو ٿا، اهو سڀ ڪجهه حادثي سان ٿيو.

Vitali: مان ڪافي عرصي کان MCS بلاڪ ڪرڻ کان واقف آهيان، پر هن وقت تائين مون کي اها خبر نه هئي ته اهو توهان جو ڪم آهي، ۽ اهو نه سمجهي سگهيو آهيان ته اهو توهان جي آخري نالن جو مخفف آهي.

هميشه بدلجندڙ دنيا ۾ ڪيئن رهڻو آهي؟

Алексей: مون کي هڪ لاڳاپيل موضوع تي هڪ سوال آهي. 30 يا 40 سال اڳ مختلف خصوصيتن ۾ وڌيڪ آزادي هئي. جيڪڏھن توھان چاھيو ٿا ڪيريئر شروع ڪريو ملٽي ٿريڊنگ يا ورهايل سسٽم ۾، توھان کي ڀليڪار آھي، جيڪڏھن توھان چاھيو ٿا آپريٽنگ سسٽم ۾، ڪو مسئلو نه آھي. هر علائقي ۾ ڪيترائي کليل سوال ۽ ڪجهه ماهر هئا. تنگ خصوصيتون هاڻي سامهون آيون آهن: عام طور تي آپريٽنگ سسٽم تي صرف ماهر نه آهن، انفرادي سسٽم تي ماهر آهن. اهو ساڳيو آهي multithreading ۽ تقسيم نظام سان. پر مسئلو اهو آهي ته اسان جي زندگي لامحدود نه آهي؛ هرڪو صرف چند ڏهاڪن کي تحقيق ڪرڻ لاء وقف ڪري سگهي ٿو. هن نئين دنيا ۾ ڪيئن رهڻو آهي؟

ميٽر: اسان ان سلسلي ۾ خاص نه آهيون، ساڳي ڳالهه ٻين علائقن ۾ هڪ ڀيرو ٿي. مان خوش قسمت هوس ته مون ڪمپيوٽر سائنس ۾ ڪم ڪرڻ شروع ڪيو جڏهن فيلڊ پنهنجي ”نوجوان“ سالن ۾ هئي. ڪجهه بنياد اڳ ۾ ئي رکيا ويا هئا، پر سڀ ڪجهه اڃا تائين بلڪل ناگزير هو. اهو موقعو اڪثر نه ايندو. اليڪٽريڪل انجنيئرنگ تمام گهڻي وقت کان وٺي رهي آهي، فزڪس اڃا به ڊگهو، رياضي تقريباً وقت جي شروعات کان وٺي. پر هن جو مطلب اهو ناهي ته هاڻي ڪو به ماڻهو رياضي ۾ دلچسپ دريافت نه ڪري رهيو آهي. اڃا به ڪيترائي کليل مسئلا آهن، پر ساڳئي وقت، وڌيڪ سکڻ جي ضرورت آهي. توھان صحيح ٿا چئو ته ھاڻي اڳي جي ڀيٽ ۾ تمام گھڻيون خصوصيتون آھن، پر ان جو مطلب رڳو اھو آھي ته اسان پاڻ کي ساڳي صورتحال ۾ ڳوليون ٿا جيئن انساني سرگرمين جي ٻين علائقن ۾.

Алексей: مان هتي مسئلي جي وڌيڪ عملي پهلو ۾ دلچسپي وٺان ٿو. مون وٽ رياضي جو پس منظر آهي، ۽ منهنجي پڙهائي دوران مون اڪثر ڪانفرنسن ۾ شرڪت ڪئي ۽ مختلف سائنسي موضوعن تي ڪم ڪيو. مون کي معلوم ٿيو ته سامعين ۾ ڪو به منهنجي رپورٽن کي سمجهي نه سگهيو آهي، ۽ ساڳئي طرح، ٻين ماڻهن جي رپورٽن کي صرف پاڻ کي سمجهي سگهجي ٿو. اهو معاملو اعليٰ سطحي عنوانن ۾ نه آهي، پر جيئن ئي توهان ڪنهن شيءِ تي ڌيان ڏيڻ شروع ڪيو، سامعين وڌيڪ توهان سان گڏ نه رهي سگهندا. توهان هن سان ڪيئن ڊيل ڪندا؟

ميٽر: هميشه ڪامياب ناهي. مون تازو ئي هڪ رپورٽ تيار ڪئي آهي جنهن ۾ مان ٽيڪنيڪل تفصيلن ۾ تمام گهڻي گهري ويس. جيئن جيئن ڳالهه اڳتي وڌندي وئي ته اها ڳالهه واضح ٿي وئي ته اڪثر سامعين مون کي نه سمجهيو، تنهنڪري مون کي اڏامندي ئي صورتحال کي ترتيب ڏيڻو پيو. سلائيڊس تبديل نه ٿي سگھيون، ان ڪري اھو تمام سٺو نھ نڪتو - تنھنڪري، عام طور تي، مان ڪوشش ڪريان ٿو ته سلائڊ استعمال نه ڪريان. مجموعي طور تي، منهنجو مشورو توهان جي سامعين تي غور ڪرڻ آهي. توهان کي ڄاڻڻ جي ضرورت آهي ته توهان ڪير ڳالهائي رهيا آهيو، انهن جي ڄاڻ جي سطح ڇا آهي، ۽ توهان جي ڪم جي ساراهه ڪرڻ لاء انهن کي ڇا ٻڌڻ جي ضرورت آهي.

Vitali: ڇا توهان اسان کي ڪو اشارو ڏئي سگهو ٿا ته هي ليڪچر ڇا هو؟

ميٽر: ايمانداريءَ سان، مان هن موضوع تي نه وسارڻ کي ترجيح ڏيندس ته جيئن سوال ۾ ماڻهن کي گمنام رکيو وڃي. ڳالهه اها آهي ته اسان اڪثر ڪري ان مسئلي جي پيچيدگين ۾ پئجي ويندا آهيون جنهن تي اسين ڪم ڪري رهيا آهيون، تنهنڪري اسان لاءِ ڳالهه جي شروعات ۾ وضاحت ڪرڻ مشڪل ٿي پوي ٿو ته مسئلو دلچسپ ۽ اهم ڇو آهي ۽ ان جو انهن مسئلن سان ڪهڙو واسطو آهي. سامعين اڳ ۾ ئي ڄاڻي ٿو. منهنجي مشاهدي مطابق، شاگردن کي هن مهارت کي سکڻ ۾ تمام گهڻو ڏکيو وقت آهي. ۽ اهو به منهنجي تازي رپورٽ جو ڪمزور نقطو هو. هڪ مناسب ترتيب واري رپورٽ کي، شروع کان ئي، سامعين سان رابطو ڳولڻ گهرجي، انهن کي وضاحت ڪرڻ گهرجي ته مسئلو ڇا آهي ۽ اهو ڪيئن لاڳاپيل آهي انهن موضوعن سان جيڪو اڳ ۾ ئي ڄاڻايل آهي. اهو تعارف ڪيترو ٽيڪنيڪل آهي اهو سامعين تي منحصر آهي. جيڪڏهن اهو مڪمل طور تي متحرڪ آهي، ته رپورٽ ڪيترن ئي مرحلن ۾ ٿي سگهي ٿي. تعارف هر ڪنهن جي پهچ هجڻ گهرجي، ۽ آخر تائين اهو ٽڪرو توهان سان گڏ نه رهي سگهي، پر توهان جي فيلڊ سان نسبتا واقف ماڻهو ان کي سمجهڻ جي قابل هوندا.

ڇا شاگرد بيوقوف ٿي رهيا آهن؟ عالمي رجحانات، بين الاقواميت.

Алексей: توهان ڪيترن ئي ڏهاڪن کان شاگردن کي ڏسي رهيا آهيو. ڇا شاگرد ڏهاڪن کان ڏهاڪي يا سال کان سال تائين بيڪار يا هوشيار ٿي رهيا آهن؟ روس ۾، پروفيسر مسلسل شڪايت ڪن ٿا ته شاگرد هر سال گونگا ٿي رهيا آهن، ۽ حقيقت ۾ اهو واضح ناهي ته ان بابت ڇا ڪجي.

ميٽر: توهان واقعي اسان جي پراڻي ماڻهن کان تمام گهڻو منفي ٻڌي سگهو ٿا. غير شعوري طور تي، اسان وٽ هڪ رجحان آهي ته شاگردن کان 30 سالن جا سمورا تجربا جذب ڪندا جيڪي اسان وٽ اڳ ۾ ئي آهن. جيڪڏهن مون کي 1985 جي ڀيٽ ۾ گهڻي ڄاڻ آهي ته شاگردن کي ڇو نه آهي؟ شايد ڇاڪاڻ ته اهي 20 سالن جي عمر وارا آهن، توهان ڇا ٿا سوچيو؟ منهنجو خيال آهي ته تازو ڏهاڪن ۾ سڀ کان اهم تبديليون ڊيموگرافڪ ساخت ۾ آهن: اسان وٽ هاڻي خاص طور تي وڌيڪ بين الاقوامي شاگرد آهن، ڪينيڊين جي استثنا سان. اتي ڪيترائي ڪينيڊين هوندا هئا ڇاڪاڻ ته اسان ڪينيڊين سرحد جي تمام ويجهو آهيون ۽ اتان جا شاگرد هفتي جي آخر ۾ گهر وڃي سگهن ٿا. پر هاڻي ڪئناڊا ۾ ڪيتريون ئي سٺيون يونيورسٽيون آهن، ۽ ڪينيڊين هتي پڙهائڻ پسند ڪن ٿا، انهن مان تمام گهٽ آمريڪا اچن ٿا.

Алексей: ڇا توهان سوچيو ٿا ته اهو مقامي رجحان آهي يا عالمي؟

ميٽر: مون کي ياد ناهي ته ڪير آهي، پر ڪنهن چيو آهي ته دنيا فليٽ آهي. اسان جو ميدان تمام گهڻو بين الاقوامي بڻجي چڪو آهي. ACM ڪانفرنس اڳي، اهي خاص طور تي آمريڪا ۾ منعقد ڪيا ويا هئا، پوء انهن ٻين ملڪن ۾ هر 4 سالن ۾ هڪ ڀيرو منعقد ڪرڻ جو فيصلو ڪيو، ۽ هاڻي اهي سڄي دنيا ۾ منعقد ڪيا ويا آهن. انهن تبديلين کي اڃا به وڌيڪ متاثر ڪيو IEEEجيئن ته اهو هميشه ACM کان وڌيڪ بين الاقوامي تنظيم آهي. ۽ چين، انڊيا، روس، جرمني ۽ ٻين ڪيترن ئي ملڪن مان پروگرام ڪرسيون آهن، ڇاڪاڻ ته هاڻي هر طرف گهڻو ڪجهه ٿي رهيو آهي.

Алексей: پر، شايد، اهڙي بين الاقواميت جا ڪي منفي پهلو آهن؟

ميٽر: مان اهو چوندس ته سڀئي منفي پهلو جو تعلق ٽيڪنالاجي سان نه پر سياست سان آهي. هڪ دفعي، اصل مسئلو اهو هو ته آمريڪا دنيا جي ملڪن مان هوشيار ۽ باصلاحيت ماڻهن کي چوري ڪري رهيو هو. ۽ هاڻي بنيادي مسئلو مختلف ملڪن جي وچ ۾ سياسي رانديون ويزا ۽ اميگريشن آهي.

Алексей: يعني رڪاوٽون ۽ اهڙيون شيون. اهو واضح آهي.

Владимир: ذاتي طور تي، مان ان ڳالهه ۾ دلچسپي وٺان ٿو ته شاگردن کي هڪ نئون مضمون پڙهائڻ وقت توهان ڪهڙو طريقو اختيار ڪيو. اتي مختلف آپشن آھن: توھان ڪوشش ڪري سگھوٿا سڀ کان پھريائين انھن کي حوصلا افزائي ڪرڻ لاءِ ڪجھ نئين ڪوشش ڪرڻ لاءِ، يا توھان وڌيڪ ڌيان ڏئي سگھوٿا تفصيلن تي ته ھڪ خاص ٽيڪنالاجي ڪيئن ڪم ڪري ٿي. توهان ڇا کي ترجيح ڏيو ٿا؟

شاگردن سان گڏ مؤثر ڪم

Алексей: ۽ پهرين ۽ سيڪنڊ جي وچ ۾ لات توازن ڪيئن ڳولي؟

ميٽر: مسئلو اهو آهي ته ڪلاس هميشه ائين نه هلندا آهن جيئن مان چاهيان ٿو. مان عام طور تي شاگردن کي پڙهڻ جو مواد اڳواٽ ئي ڏيندو آهيان ته جيئن هو ان ۾ غور ڪري، ان کي پنهنجي قابليت جي لحاظ کان چڱيءَ طرح سمجھن، ۽ انهن حصن جي باري ۾ سوال تيار ڪن جن کي هو سمجهي نه سگهندا آهن. پوءِ ڪلاس ۾ توھان سڀ کان وڌيڪ مشڪل لمحن تي ڌيان ڏيئي سگھوٿا ۽ انھن کي گڏجي ڳولي سگھو ٿا. اهڙيءَ طرح مان ڪلاس کي سڀ کان وڌيڪ سيکارڻ پسند ڪندو آهيان. پر اهو لوڊ جيڪو هاڻي شاگردن تي آهي، مان هميشه اهو پڪ ڪرڻ جي قابل نه آهيان ته اهي اڳ ۾ تيار ڪن. نتيجي طور، توھان کي وڌيڪ وقت ڏيڻو پوندو مواد جي عام ريٽيلنگ لاءِ جيڪو توھان چاھيو ٿا. ان جي باوجود، مان ڪوشش ڪريان ٿو ته اسان جي طبقن کي انٽرويو ۾ رکون. ٻي صورت ۾، هڪ دفعو وڊيو رڪارڊ ڪرڻ آسان آهي ته شاگرد وري گهر ۾ ڏسي سگهن ٿا. زنده طبقن جو نقطو انساني رابطي آهي. ڪلاس ۾، مان سلائڊن جي بجاءِ چاڪ ۽ بليڪ بورڊ استعمال ڪرڻ کي ترجيح ڏيان ٿو، سواءِ ڪن خاص حالتن جي جڏھن ڊاگرام تمام پيچيده ھوندو آھي ته بورڊ تي ٺھيل آھي. انهي جي مهرباني، مون کي سخت سبق جي منصوبي تي لٺ نه ڪرڻو پوندو. جيئن ته ڪوبه سخت حڪم نه آهي جنهن ۾ آئون مواد ڏيان ٿو، اهو مون کي اجازت ڏئي ٿو ته مون کي حاصل ڪيل سوالن جي بنياد تي سامعين کي ترتيب ڏيو. عام طور تي، مان ڪوشش ڪريان ٿو ته ڪلاسز کي جيترو ٿي سگهي انٽرايڪٽو بڻايو وڃي، ته جيئن مون وٽ موجود مواد جو دارومدار انهن سوالن تي هجي جيڪي مون کان پڇيا ويا آهن.

Владимир: اهو تمام سٺو آهي. منهنجي تجربي ۾، ٻڌندڙن کي سوال پڇڻ لاءِ حاصل ڪرڻ ڪافي مشڪل آهي. ڪنهن به سوال ڪرڻ لاءِ اڳواٽ پڇا ڳاڇا ڪرڻ جي باوجود به، هو ڪيترو به بيوقوف يا هوشيار هجي، تڏهن به خاموش آهن. توهان هن سان ڪيئن ڊيل ڪندا؟

ميٽر: توهان کلندا، پر جيڪڏهن توهان ڪافي دير تائين خاموش بيٺو، جلدي يا دير سان هرڪو بي آرام ٿي ويندو ۽ ڪو هڪ سوال پڇندو. يا توهان ها يا نه جواب سان هڪ سادو ٽيڪنيڪل سوال پڇي سگهو ٿا اهو طئي ڪرڻ لاءِ ته ڇا ماڻهو سمجهن ٿا ته ڇا چيو ويو آهي. مثال طور، مٿي ڏنل مثال ۾ ڊيٽا جي نسل آهي؟ ڪير ٿو سوچي؟ ڪير نٿو سوچي؟ ڪير ڪجھ به نه ٿو سمجهي، ڇو ته مجموعي طور تي صرف اڌ هٿ مٿي ويا آهن؟

Vitali: ۽ جيڪڏهن توهان غلط جواب ڏنو ته توهان کي ڪلاس مان ڪڍيو ويندو :)

ميٽر: جيڪڏھن توھان ڪجھھ جواب نه ڏنو آھي، ته توھان کي ھڪڙو سوال پڇڻ گھرجي. مون کي اهو سمجهڻ جي ضرورت آهي ته ڇا واقعي شاگرد کي ڄاڻڻ جي ضرورت آهي انهي سوال جو جواب ڏيڻ لاء جيڪو مون پڇيو هو. مون کي انهن جي مدد ڪرڻ جي ضرورت آهي ته انهن جي مدد ڪن. مان انھن سان ٺاھڻ لاءِ تيار آھيان ته جيئن اھي مسئلو سمجھن. پر جيڪڏهن مون کي خبر ناهي ته انهن جي سر ۾ ڇا ٿي رهيو آهي، مان اهو نه ٿو ڪري سگهان. ۽ جيڪڏهن توهان شاگردن کي ڪافي وقت تائين امن نه ڏيو، ڪڏهن ڪڏهن آخر ۾ اهي صحيح سوال پڇندا آهن، اهو آهي، جيڪي مون کي اهو ڏسڻ جي اجازت ڏين ٿا ته شاگردن جي سرن ۾ ڇا ٿي رهيو آهي. 

Алексей: ڇا اهي سوال ڪڏهن ڪڏهن اهڙن خيالن کي جنم ڏيندا آهن جن بابت توهان پاڻ اڳي نه سوچيو هوندو؟ ڇا اهي غير متوقع آهن؟ ڇا اهي توهان کي نئين روشني ۾ هڪ مسئلو ڏسڻ جي اجازت ڏين ٿا؟

ميٽر: اهڙا سوال آهن جيڪي مواد پيش ڪرڻ جو هڪ نئون رستو کوليندا آهن. اتي اڪثر سوال آھن جيڪي دلچسپ مسئلا پيدا ڪن ٿا جن بابت مون ڳالهائڻ جو ارادو نه ڪيو ھو. شاگرد اڪثر مون کي ٻڌائيندا آهن ته مون وٽ هڪ لاڙو آهي موضوع ڇڏڻ جو جڏهن اهو ٿئي ٿو. ۽، انهن جي مطابق، گهڻو ڪري هي سبق جو سڀ کان دلچسپ حصو آهي. تمام ٿورڙو، صرف چند ڀيرا، شاگردن سوال پڇيا جيڪي تحقيق ۾ هڪ نئين هدايت کي وڌايو ۽ هڪ مضمون ۾ وڌايو. اهو گهڻو ٿئي ٿو شاگردن سان گفتگو ۾ نه بلڪه ڪلاس دوران، پر ڪڏهن ڪڏهن ڪلاسن دوران به ائين ٿيندو آهي. 

Алексей: پوءِ شاگردن اوهان کان سوال پڇيا ته پوءِ مضمون شايع ڪرڻ ممڪن هو؟

ميٽر: ها. 

Vitali: توهان ڪيترا ڀيرا شاگردن سان اهي گفتگو ڪندا آهيو؟ جڏهن اهي سبق دوران ڍڪيل هئي ان کان وڌيڪ سکڻ چاهيندا؟

ميٽر: منهنجي گريجوئيٽ شاگردن سان - هر وقت. مون وٽ انهن مان اٽڪل 5 يا 6 آهن، ۽ اسان انهن سان هر وقت ڪجهه بحث ڪندا آهيون. ۽ هن قسم جون ڳالهيون انهن شاگردن سان جيڪي صرف منهنجي ڪلاس ۾ شرڪت ڪن ٿيون، تمام عام نه آهن. جيتوڻيڪ مان چاهيان ٿو ته اهو گهڻو ڪري ٿئي ها. مون کي شڪ آهي ته اهي صرف آفيس جي ڪلاڪن دوران فيڪلٽي ۾ اچڻ کان ڊڄندا آهن. هر سيمسٽر، ڪجهه شاگرد هن نفسياتي رڪاوٽ کي ختم ڪرڻ جو انتظام ڪن ٿا، ۽ اهو هميشه دلچسپ آهي ته ڪلاس کان پوء انهن سان ڳالهائڻ لاء. سچ، جيڪڏهن سڀئي شاگرد ايترا بهادر هجن ها، ته مون وٽ ايترو وقت نه هجي ها. تنهنڪري شايد هر شي ڪم ڪري رهيو آهي جيئن اهو ٿيڻ گهرجي. 

Vitali: توهان شاگردن سان ڳالهه ٻولهه ڪرڻ لاءِ وقت ڪيئن ڳوليندا آهيو؟ جيتري قدر مون کي خبر آهي، آمريڪا ۾ استادن وٽ تمام گهڻو ڪم آهي - گرانٽس ۽ ٻين لاءِ درخواست ڏيڻ. 

ميٽر: ايمانداري سان، شاگردن سان ڪم ڪرڻ منهنجي نوڪري جو پاسو آهي جنهن مان تمام گهڻو مزو ايندو آهيان. تنهن ڪري مون کي هن لاء ڪافي حوصلا افزائي آهي. گهڻو وقت منهنجو آفيس ۾ گذرندو آهي هر قسم جي گڏجاڻين ۾. هاڻي اونهاري آهي، تنهنڪري منهنجو شيڊول گهٽ مصروف آهي، پر اسڪول جي سال دوران، هر روز 9 کان 17 تائين مون وٽ سڀ ڪجهه ڀريل آهي. تحقيقي ڪم، تبصرا، امداد - هن سڀني لاء صرف شام ۽ هفتي جي آخر ۾ آهن. 

نون ڪورسز ۽ ڪتابن جي تياري کي ڪيئن جاري رکيو وڃي.

Алексей: ڇا توهان هن وقت ڪنهن به ڪورس کي سيکاري رهيا آهيو جيڪو توهان ڪافي عرصي کان سيکاري رهيا آهيو؟ ڪمپيوٽر سائنس جي تعارف وانگر ڪجهه.

ميٽر: پهرين شيء جيڪا ذهن ۾ اچي ٿي هتي پروگرامنگ ٻولين ۾ هڪ ڪورس آهي. 

Алексей: هن ڪورس جو اڄ جو نسخو 10، 20، 30 سال اڳ کان ڪيترو مختلف آهي؟ ٿي سگهي ٿو ته هتي وڌيڪ دلچسپ آهي هڪ خاص ڪورس جي تفصيل نه آهي، پر عام رجحانات.

ميٽر: پروگرامنگ ٻولين تي منهنجو ڪورس ان وقت ڪجهه غير معمولي هو جڏهن مون ان کي ٺاهيو. مون ان کي 1980 جي ڏهاڪي جي آخر ۾ پڙهڻ شروع ڪيو، منهنجي ساٿي، ڊگ بالڊون (ڊگ بالڊون). ڪورس جو موضوع صرف منهنجي خصوصيت سان لاڳاپيل هو، پر جڏهن هو ڇڏي ويو، آئون ڪورس سيکارڻ لاء بهترين اميدوار هو. مون کي ان وقت موجود ڪو به درسي ڪتاب پسند نه آيو، ان ڪري مون پاڻ هن ڪورس لاءِ درسي ڪتاب لکي ختم ڪيو. (ايڊيٽر جو نوٽ: اسان ڪتاب بابت ڳالهائي رهيا آهيون "پروگرامنگ ٻولي عمليات") اهو هاڻي دنيا جي 200 کان وڌيڪ يونيورسٽين ۾ استعمال ٿيندو آهي. منهنجو اهو طريقو غير معمولي آهي ته اهو ڄاڻي ٻجهي ٻوليءَ جي جوڙجڪ ۽ عمل جي مسئلن کي گڏ ڪري ٿو، ۽ سڀني ممڪن علائقن ۾ انهن پهلوئن جي وچ ۾ رابطي تي تمام گهڻو ڌيان ڏئي ٿو. بنيادي طريقه ڪار تبديل نه ٿيو آهي، جيئن ته ڪيترائي بنيادي تصور آهن: تجريد، نالن جي جاء، ماڊليت، قسمون. پر انهن ٻولين جو مجموعو جنهن سان انهن تصورن جو مظاهرو ڪيو ويو آهي، مڪمل طور تي تبديل ٿي چڪو آهي. جڏهن پهريون ڀيرو ڪورس ٺاهيو ويو هو، پاسڪل ۾ ڪيترائي مثال هئا، پر اڄ تائين منهنجي ڪيترن ئي شاگردن اڃا تائين اها ٻولي نه ٻڌي آهي. پر اهي ڄاڻن ٿا Swift، Go، Rust، تنهنڪري مون کي انهن ٻولين بابت ڳالهائڻو آهي جيڪي اڄ استعمال ۾ آهن. ان سان گڏ، شاگردن کي هاڻي اسڪرپٽنگ ٻولين ۾ چڱي طرح ڄاڻ آهي، پر جڏهن مون هن ڪورس کي سيکارڻ شروع ڪيو، اهو سڀ ڪجهه مرتب ڪيل ٻولين بابت هو. ھاڻي اسان کي پٿون، روبي ۽ حتي پرل بابت تمام گھڻو مواد جي ضرورت آھي، ڇاڪاڻ ته ھي اھو آھي جيڪو اڄڪلھ ڪوڊ لکيو وڃي ٿو، ۽ انھن ٻولين ۾ ڪيتريون ئي دلچسپ ڳالھيون ٿي رھيون آھن، جن ۾ ٻوليءَ جي جوڙجڪ جي شعبي ۾ پڻ شامل آھي. 

Vitali: پوءِ منهنجو ايندڙ سوال پوئين سوال سان لاڳاپيل هوندو. ڪيئن هن علائقي ۾ رکڻ لاء؟ مون کي شڪ آهي ته اهڙي ڪورس کي اپڊيٽ ڪرڻ لاءِ تمام گهڻو ڪم ڪرڻ جي ضرورت آهي - توهان کي نئين ٻولين کي سمجهڻ جي ضرورت آهي، بنيادي خيالن کي سمجهڻ جي ضرورت آهي. توهان اهو ڪيئن ٿا ڪريو؟

ميٽر: مان فخر نٿو ڪري سگهان ته مان هميشه 100٪ ڪامياب آهيان. پر اڪثر وقت مان صرف اهو ڪندو آهيان جيڪو هرڪو ڪندو آهي - انٽرنيٽ پڙهو. جيڪڏهن مان Rust کي سمجهڻ چاهيان ٿو، ته آئون ان کي گوگل ڪريان، موزيلا پيج تي وڃو ۽ اتي پوسٽ ڪيل مينوئل پڙهو. اهو انهن شين جو حصو آهي جيڪو تجارتي ترقي ۾ ٿئي ٿو. جيڪڏهن اسان سائنس جي باري ۾ ڳالهايون ٿا، ته توهان کي مکيه ڪانفرنس ۾ رپورٽن جي پيروي ڪرڻ جي ضرورت آهي. 

ڪاروبار ۽ اڪيڊمي جي وچ ۾ لنڪ

Vitali: اچو ته ڪاروبار ۽ سائنسي تحقيق جي وچ ۾ رابطي جي باري ۾ ڳالهايون. توھان جي ڪمن جي لسٽ ۾، مون ڪيش جي مطابقت تي ڪيترائي مضمون ڏٺا. مان سمجهان ٿو ته ڪيش مطابقت الگورتھم ان وقت غير مستحڪم هئا جڏهن اهي شايع ٿيا هئا؟ يا ڪافي وسيع نه آهي. عملي طور تي توهان جا خيال ڪيترا عام هئا؟

ميٽر: مون کي پڪ ناهي ته توهان ڪهڙي اشاعت بابت ڳالهائي رهيا آهيو. مون پنهنجي شاگردن سان ڪافي ڪم ڪيو آهي بل بولوسڪي (وليم بولوسڪي) ۽ ليونيڊاس ڪانٽوٽانسيسLeonidas Kontothanassis) 1990 جي شروعات ۾ نيومن مشينن جي ياداشت جي انتظام تي. انهي وقت، ڪاروبار اڃا تائين سمجهي نه سگهيو آهي ته ڪيئن صحيح طريقي سان ملٽي پروسيسر سسٽم ٺاهيو وڃي: ڇا اهو هارڊويئر سطح تي ريموٽ ميموري تائين رسائي جي مدد ڪرڻ جي قابل آهي، ڇا اهو ميموري کي تقسيم ڪرڻ جي قابل آهي، ڇا اهو ممڪن آهي ته ڪيش لوڊ ڪرڻ ريموٽ ياداشت، يا اهو ضروري آهي ته صفحن کي آپريٽنگ سسٽم ۾ منتقل ڪيو وڃي؟ بل ۽ ليونيڊاس ٻنهي هن علائقي ۾ ڪم ڪيو ۽ ريموٽ ڪيش لوڊ ڪرڻ جي بغير طريقن جي ڳولا ڪئي. اهو سڌو سنئون ڪيش ڪوئرنس سان لاڳاپيل نه هو، پر اهو اڃا تائين NUMA ميموري مئنيجمينٽ تي ڪم ڪري رهيو هو، ۽ بعد ۾ جديد آپريٽنگ سسٽم ۾ صفحي جي جڳهه تي جديد طريقا ان مان وڌيا. مجموعي طور تي، بل ۽ ليونيڊاس اهم ڪم ڪيو، جيتوڻيڪ هن علائقي ۾ سڀ کان وڌيڪ بااثر نه هئا - اتي ڪيترائي ٻيا ماڻهو هئا جيڪي ساڳئي وقت ڪم ڪري رهيا هئا. بعد ۾، مون هارڊويئر ٽرانزيڪشنل ميموري جي حوالي سان ڪيش ڪوئرنس سان لاڳاپيل موضوع تي ڪم ڪيو. جنهن گروپ سان مون هن مسئلي تي ڪم ڪيو ان کي ختم ڪيو ويو ڪيترن ئي پيٽرن حاصل ڪرڻ. انهن جي پويان ڪجهه خوبصورت دلچسپ خيال آهن، پر مان نه ٿو سمجهان ته اهي عملي طور تي لاڳو ٿي ويندا. هڪ طريقو يا ٻيو، اهو مون لاء ڏکيو آهي ته انهن جي فائدي جو فيصلو ڪرڻ. 

Алексей: ان سلسلي ۾، هڪ وڌيڪ ذاتي سوال: اهو توهان لاء ڪيترو اهم آهي ته توهان جي خيالن تي عمل ڪيو وڃي؟ يا توهان ان بابت نه سوچيو؟

ميٽر: مون کي هي سوال ٻين ماڻهن، درخواست ڏيندڙن يا اميدوارن سان انٽرويو ۾ پڇڻ پسند آهي جيڪي فيڪلٽي ۾ شامل ٿيڻ چاهيندا آهن. مان نه ٿو سمجهان ته هن سوال جو ڪو صحيح جواب آهي. جيڪي ماڻهو سٺيون شيون ڪندا آهن انهن ۾ تمام مختلف حوصلا هوندا آهن. مان مسئلن ڏانهن متوجه آهيان ڇاڪاڻ ته مون کي ذاتي طور تي اهي دلچسپ لڳندا آهن، نه ته انهن جي عملي فائدن جي ڪري. پر ٻئي طرف، جڏهن ڪجهه دلچسپ شيء اڃا تائين ايپليڪيشن ڳولي ٿو، مون کي واقعي پسند آهي. تنهنڪري اهو هتي آسان ناهي. پر منهنجي ڪم جي شروعات ۾، مان اڃا تائين دنيا ۾ آخري استعمال جي خيال کان نه، پر ان خيال جي هم آهنگي ۽ ان کي ڳولڻ ۽ ڏسڻ جي خواهش جي ذريعي هلايو ويو آهيان. جيڪڏهن آخر ۾ اهو عملي نتيجو ڏئي ٿو، عظيم. 

Алексей: توهان جي تعليم ۽ تجربي جي ڪري، توهان ٻين ماڻهن جي خيالن جي قدر جو فيصلو ڪرڻ لاءِ گھڻن کان بهتر آهيو. توهان انهن جو مقابلو ڪري سگهو ٿا ۽ اهو طئي ڪري سگهو ٿا ته ڪهڙو ڪم بهتر آهي جنهن سان. مون کي پڪ آهي ته توهان وٽ انهن شين جي باري ۾ ڪا راءِ آهي جيڪي هن وقت وڏي ٺاهيندڙن جهڙوڪ Intel پاران عملي طور استعمال ٿي رهيون آهن. توهان جي نقطي نظر کان، اهو طريقو ڪيترو صحيح آهي جيڪو اهي ڪمپنيون وٺي رهيون آهن؟

ميٽر: مشق هميشه ان جي چوڌاري ڦري ٿو جيڪو تجارتي طور تي ڪامياب ٿي سگهي ٿو، اهو آهي، منافعو پيدا ڪريو، ۽ توهان ڀلي ڪنهن ٻئي کان ان بابت پڇو. منهنجو ڪم گهڻو ڪري اشاعتن ۾ نتيجو آهي، ۽ آپريٽنگ سسٽم جي فيلڊ ۾ اهي ڪارڪردگي اشارن جي بنياد تي تشخيص ڪيا ويا آهن: رفتار، توانائي جي استعمال، ڪوڊ سائيز. پر مون کي هميشه اهو محسوس ٿيو ته اهي تجرباتي نتيجا صرف مضمونن ۾ شامل ڪيا ويا آهن ته جيئن اهي شايع ٿي سگهن، ۽ ڪم لاء ماڻهن جي حقيقي مقصد جمالياتي آهن. محقق هڪ فنڪشنل نقطه نظر کان حل جو جائزو وٺندا آهن، اهي خيال ڪن ٿا ته خيال ڪيئن خوبصورت آهن، ۽ اهي موجوده طريقن کان بهتر ڪجهه پيدا ڪرڻ جي ڪوشش ڪندا آهن. محقق ذاتي، تابعاتي، جمالياتي مقصدن جي ذريعي هلائي رهيا آهن. پر توهان ان بابت مضمون ۾ نٿا لکي سگهو؛ اهي شيون پروگرام ڪميٽي لاءِ دليل نه آهن. خوش قسمت، خوبصورت حل اڪثر ڪري تيز ۽ سستا آهن. منهنجي هڪ درجن ساٿين ۽ مون هن موضوع تي اٽڪل 15 سال اڳ بحث ڪيو ۽ ان بابت هڪ مضمون لکڻ ختم ڪيو. منهنجو خيال آهي ته توهان اڃا تائين ان کي ڳولي سگهو ٿا، اهو سڏيو ويندو آهي "سيسٽم ريسرچ جو اندازو ڪيئن ڪجي" يا ان جهڙو ڪجهه، ان ۾ درجن کان وڌيڪ ليکڪ آهن. هي واحد مضمون آهي جنهن ۾ مان گڏ ليکڪ آهيان ساشا Fedorovaتنهن ڪري جيڪڏهن توهان منهنجي پبليڪيشن جي لسٽ ۾ هن جو نالو ڳوليندا، توهان کي اهو ملندو جيڪو توهان کي گهربل آهي. اهو سسٽم جي تحقيق جو جائزو وٺڻ بابت ڳالهائيندو آهي ۽ ڪيترو اهم خوبصورتي آهي. 

Алексей: پوءِ سائنس ۽ ڌنڌي ۾ جيڪا شيءِ سٺي سمجهي وڃي ٿي، ان جي معيار ۾ فرق آهي. سائنس ڪارڪردگي، بجلي جو استعمال، TDP، عمل درآمد جي آسان، ۽ گهڻو ڪجهه جو جائزو وٺندو آهي. ڇا توهان وٽ يونيورسٽي ۾ هن قسم جي تحقيق ڪرڻ جو موقعو آهي؟ ڇا توهان وٽ مختلف مشينن ۽ مختلف فن تعمير سان ليبارٽري آهي جنهن ۾ توهان تجربا ڪري سگهو ٿا؟

ميٽر: ها، اسان جي ڊپارٽمينٽ ۾ تمام گهڻيون مختلف دلچسپ مشينون آهن. گهڻو ڪري اهي ننڍا آهن، اسان وٽ هڪ ننڍڙو ڪلستر ۽ ڪيترائي ملٽي پروسيسر سسٽم آهن مختلف تيز رفتار سان. ان کان علاوه، ڪيمپس ۾ هڪ وڏو ڪمپيوٽنگ سينٽر آهي جيڪو ڪيترن ئي درجن جي مختلف شعبن جي سائنسدانن جي خدمت ڪندو آهي. ان ۾ اٽڪل ھزار نوڊس ۽ ويھ ھزار ڪور آھن، سڀ لينڪس تي. جيڪڏهن گهربل هجي، توهان هميشه ڪجهه AWS خريد ڪري سگهو ٿا. تنهنڪري اسان وٽ هارڊويئر سان ڪا خاص پابنديون ناهي. 

Алексей: ٽيهه سال اڳ ڇا هو؟ ڇا پوءِ مسئلا هئا؟

ميٽر: ان وقت ٿورو مختلف هو. 1980ع جي ڏهاڪي جي وچ ڌاري، سائنس کي ڪمپيوٽنگ وسيلن جي کوٽ سمجهيو ويندو هو. هن صورتحال کي حل ڪرڻ لاء، نيشنل سائنس فائونڊيشن (نيشنل سائنس فائونڊيشن) هموار ٿيل تجرباتي تحقيق جو هڪ پروگرام ٺاهيو (Coordinated Experimental Research, CER). پروگرام جو مقصد ڪمپيوٽر سائنس جي شعبن لاءِ ڪمپيوٽنگ انفراسٽرڪچر مهيا ڪرڻ هو، ۽ ان ۾ اهم تبديلي آئي آهي. هن جي مهيا ڪيل پئسن سان، اسان روچيسٽر يونيورسٽي ۾ 1984 ۾ هڪ 128 ناٽ BBN بٽر فلائي خريد ڪئي، اهو منهنجي اتي پهچڻ کان هڪ سال اڳ هو. ان وقت اهو گڏيل ميموري سان گڏ دنيا جو سڀ کان وڏو ملٽي پروسيسر سسٽم هو. ان ۾ 128 پروسيسر هئا، هر هڪ الڳ ماء بورڊ تي، ۽ چار ريڪ تي قبضو ڪيو. هر پروسيسر وٽ هڪ ميگا بائيٽ ميموري هئي، 128 ميگا بائيٽ ريم ان وقت ناقابل تصور مقدار هئي. هن مشين تي اسان پهريون ڀيرو MCS لاڪنگ لاڳو ڪيو. 

Алексей: پوءِ جيڪڏهن مان توهان کي صحيح سمجهان ته پوءِ هن وقت هارڊويئر جو مسئلو حل ٿي ويو آهي؟ 

ميٽر: عام طور تي، ها. ڪجھ احتياط آھن: پھريون، جيڪڏھن توھان ڪم ڪري رھيا آھيو ڪمپيوٽر آرڪيٽيڪچر چپ سطح تي، اھو ڪرڻ مشڪل آھي تعليمي ماحول ۾ ڇو ته ان کي ڪاروبار ۾ ڪرڻ لاءِ بھتر اوزار آھن. جيڪڏهن توهان کي 10 نانو ميٽرن کان ننڍي شيءِ جي ضرورت آهي، توهان کي اهو ڪنهن ٻئي کان آرڊر ڪرڻو پوندو. هن علائقي ۾ انٽيل تي محقق ٿيڻ تمام آسان آهي. جيڪڏهن توهان چپس يا سولڊ اسٽيٽ ياداشت تي نظرياتي ڪميونيڪيشن تي ڪم ڪري رهيا آهيو، توهان کي ڪاروبار ۾ اهڙيون ٽيڪنالاجيون ملن ٿيون جيڪي اڃا سائنس ۾ نه آهن، تنهنڪري توهان کي اتحاد ٺاهڻو پوندو. مثال طور، اسٽيفن سوانسن (اسٽيون سوانسن) ٺاهي وئي اهڙي شراڪت نئين ميموري ٽيڪنالاجيز لاء. هي فارم هميشه ڪم نٿو ڪري، پر ڪجهه حالتن ۾ اهو ڪافي ڪامياب ٿي سگهي ٿو. ان کان سواء، سائنس ۾ سڀ کان وڌيڪ طاقتور ڪمپيوٽنگ سسٽم جي ترقي وڌيڪ ڏکيو آهي. سڀ کان وڏو سپر ڪمپيوٽر پروجيڪٽ هن وقت آمريڪا، جپان ۽ چين ۾ آهن، جن جو ڌيان ڪاروبار تي آهي. 

خيالن جو عملي نفاذ. MCS، MS، CLH، JSR 166، ڪم ڪري رهيو آهي ڊگ لي ۽ وڌيڪ سان.

Vitali: توهان اڳ ۾ ئي ڳالهايو آهي ته توهان ڪيئن هم وقت سازي جي الگورتھم تي ڪم ڪرڻ شروع ڪيو. توهان وٽ ٻه تمام مشهور مضمون آهن جن بابت MCS بلاڪنگ и مائيڪل-اسڪاٽ قطار (MS)، جيڪو هڪ لحاظ کان جاوا ۾ لاڳو ڪيو ويو. (ايڊيٽر جو نوٽ: سڀ اشاعتون ڏسي سگهجن ٿيون لنڪ). اتي هي بلاڪ ڪجهه تبديلين سان لاڳو ڪيو ويو ۽ اهو نڪتو CLH تالا، ۽ قطار تي عمل ڪيو ويو جيئن ارادو ڪيو ويو. پر توهان جي مضمونن جي اشاعت ۽ انهن جي عملي درخواست جي وچ ۾ ڪيترائي سال گذري ويا. 

Алексей: لڳي ٿو 10 سالن جي قطار جي صورت ۾.

ميٽر: جاوا معياري لائبريري ۾ اهي خاصيتون ظاهر ٿيڻ کان اڳ؟

Vitali: ها. توهان اهو ڪرڻ لاء ڇا ڪيو؟ يا انهن ڪجهه نه ڪيو؟

ميٽر: مان توهان کي ٻڌائي سگهان ٿو ته ڪيئن MS Queue جاوا 5 ۾ داخل ٿيو. ان جي سامهون اچڻ کان ڪجهه سال اڳ، مون مارڪ مائيرز جي گروپ سان گڏ سن مائڪرو سسٽم ۾ بوسٽن جي ويجھو سندن ليب ۾ ڪم ڪيو. هن انهن ماڻهن لاءِ هڪ ورڪشاپ منظم ڪيو جنهن کي هو ڄاڻي ٿو جيڪي ملٽي ٿريڊنگ ۾ دلچسپ مسئلن تي ڪم ڪري رهيا آهن ڇاڪاڻ ته هو اهي موضوع ڳولڻ چاهي ٿو جيڪي هو پنهنجي ڪمپني کي وڪرو ڪري سگهن. اتي ئي منهنجي پهرين ملاقات ڊوگ لي سان ٿي. ڊگ ۽ مان ۽ سن کان اٽڪل 25 ٻيا ماڻهو گڏجي ڊگ جي پريزنٽيشن تي بحث ڪري رهيا هئاسين جي ايس آر 166، جيڪو بعد ۾ java.util.concurrent ٿيو. رستي ۾، ڊگ چيو ته هو MS قطار استعمال ڪرڻ چاهيندو، پر ان لاء هن کي انٽرفيس لاء قطار ۾ عناصر جي تعداد لاء هڪ انسداد جي ضرورت آهي. يعني اهو ڪم هڪ الڳ طريقي سان ٿيڻ گهرجي ها، ايٽمي، درست ۽ تيز. مون صلاح ڏني ته صرف نوڊس ۾ سيريل نمبر شامل ڪريو، پھرين نوڊ جو تعداد وٺو ۽ آخري ھڪڙي ۽ ھڪڙي کي ٻئي مان گھٽايو. ڊگ پنهنجو مٿو ڇڪي، چيو ”ڇو نه،“ ۽ ائين ئي ختم ٿي ويو. اسان لائبريري ۾ هن طريقي تي عمل ڪرڻ تي بحث ڪيو، پر ڊگ تمام گهڻو ڪم پاڻ ڪيو. نتيجي طور، هن جاوا ۾ شاندار multithreading سپورٽ قائم ڪرڻ ۾ مدد ڪئي. 

Алексей: پوءِ، جيڪڏھن مان صحيح سمجھان ٿو، ته .size() طريقو معياري قطار انٽرفيس جو حصو ھجڻ گھرجي ھا، ۽ ان ۾ O(1) جي الگورتھمڪ پيچيدگي ھجڻ گھرجي ھا؟

ميٽر: ها، ۽ ان کان علاوه، هڪ الڳ ڪائونٽر جي ضرورت آهي.

Алексей: ڇو ته جيڪڏھن توھان سڏين ٿا .size() طريقو جاوا ۾، نتيجو فوري طور تي دستياب ٿيڻ جي اميد آھي ۽ مجموعي جي اصل سائيز تي ٻڌل نه آھي. مان ڏسان ٿو، مهرباني.

ميٽر: ڪجهه سالن کان پوءِ مان پنهنجي شاگرد بل شيرر سان گڏ ڊبل ڊيٽا ڍانچي تي ڪم ڪري رهيو هوس - حقيقت ۾، هي اهو آهي جنهن بابت آئون ڳالهائيندس Hydra تي رپورٽ. ڊگ اسان وٽ آيو ۽ چيو ته هو انهن کي جاوا ايگزيڪيوٽر فريم ورڪ ۾ استعمال ڪري سگهي ٿو. بل سان گڏ، انهن ٻه عمل درآمد ڪيا، نام نهاد منصفانه ۽ غير منصفانه قطار. مون انھن کي ھن منصوبي تي صلاح ڏني، جيتوڻيڪ مون اصل ڪوڊ لکڻ ۾ حصو نه ورتو. نتيجي طور، عملدار جي رفتار تمام گهڻو وڌي وئي آهي. 

Владимир: ڇا توهان پنهنجي الگورتھم جي غلط عملن کي منهن ڏنو آهي يا نوان خاصيتون شامل ڪرڻ جي درخواستن کي؟ عام طور تي، عملي طور تي نظريي سان ٺهڪندڙ هجڻ گهرجي، پر اڪثر ڪري اهي مختلف آهن. فرض ڪريو ته توهان هڪ الگورٿم لکيو آهي، ۽ اهو ڪاغذ تي ڪم ڪري ٿو، پر جيڪي ماڻهو عمل ۾ شامل آهن انهن توهان کان پڇڻ شروع ڪيو آهي وڌيڪ خاصيتون يا الگورتھم جي ڪنهن قسم جي ٽائيڪنگ لاءِ. ڇا توهان ڪڏهن اهڙيون حالتون ڪيون آهن؟

ميٽر: واحد مثال جنهن ۾ ڪو مون وٽ آيو ۽ پڇيو ته ”ان کي ڪيئن لاڳو ڪجي“ ڊگ جو سوال هو، جنهن بابت مون اڳ ۾ ئي ڳالهايو آهي. پر اهڙا ڪيئي ڪيس آهن جن ۾ عملي ضرورتن مطابق دلچسپ تبديليون ڪيون ويون آهن. مثال طور، IBM تي K42 ٽيم MCS لاڪ کي تبديل ڪيو ۽ ان کي معياري انٽرفيس بنايو، ان ڪري ڪو به ضرورت نه هئي ته قطار نوڊ کي اڳتي ۽ پوئتي وڃڻ لاءِ حاصل ڪرڻ ۽ ڇڏڻ جي معمولن کي. هن معياري انٽرفيس جي مهرباني، هڪ خيال جيڪو نظريي ۾ خوبصورت هو عملي طور ڪم ڪرڻ لڳو. اها حيرت انگيز آهي ته انهن ڪڏهن به ان بابت هڪ مضمون شايع نه ڪيو، ۽ جيتوڻيڪ انهن کي پيٽنٽ حاصل ڪيو، انهن بعد ۾ ان کي ڇڏي ڏنو. اهو خيال شاندار هو، ۽ مان ڪوشش ڪريان ٿو ان جي باري ۾ جڏهن به ممڪن هجي. 

اهڙا ٻيا به ڪيس آهن جتي ماڻهن منهنجي شايع ڪيل الگورتھم ۾ بهتري ڪئي آهي. مثال طور، ايم ايس قطار ۾ ٻه-قدم تنصيب ميڪانيزم آهي، جنهن جو مطلب آهي ته قطار جي نازڪ رستي تي ٻه CAS هئا. پراڻن ڪارن تي، CAS ڪافي قيمتي هئا. Intel ۽ ٻين ٺاهيندڙن انهن کي تازو ڪيو آهي انهن کي بهتر طور تي، پر هڪ ڀيري اهي 30-سائيڪل هدايتون هيون، تنهنڪري نازڪ رستي تي هڪ کان وڌيڪ هجڻ ناپسنديده هو. نتيجي طور، هڪ مختلف قطار ٺاهي وئي جيڪا MS قطار سان ملندڙ جلندڙ هئي، پر جنهن کي نازڪ رستي تي صرف هڪ ايٽمي آپريشن ڪيو ويو. اهو هن حقيقت جي ڪري حاصل ڪيو ويو آهي ته هڪ خاص عرصي دوران آپريشن O (1) جي بدران O (n) وقت وٺي سگهي ٿو. اهو ممڪن نه هو، پر ممڪن هو. اهو حقيقت جي ڪري ٿيو آهي ته ڪجهه لمحن تي الورورٿم قطار کي هن قطار ۾ موجوده پوزيشن تائين شروع ڪيو. عام طور تي، الورورٿم تمام ڪامياب ٿي چڪو آهي. جيتري قدر مون کي خبر آهي، اهو تمام وڏي پيماني تي استعمال نه ڪيو ويو آهي، جزوي طور تي ڇاڪاڻ ته ايٽمي عملن کي اڳ جي ڀيٽ ۾ تمام گهٽ وسيلن جي ضرورت هوندي آهي. پر خيال عظيم هو. مون کي به واقعي پسند آهي ڊيو ڊائس جو ڪم Oracle کان. هو جيڪو ڪجهه ڪري ٿو اهو تمام گهڻو عملي آهي ۽ هو لوهه کي تمام هوشياريءَ سان استعمال ڪري ٿو. هن جو گهڻو هٿ هو NUMA-Aware synchronization algorithms ۽ multi-threaded data structures ۾. 

Владимир: جڏهن توهان الگورتھم لکندا آهيو يا شاگردن کي سيکاريندا آهيو، توهان جي ڪم جو نتيجو فوري طور تي ظاهر نه ٿيندو آهي. ڪميونٽي کي ڪجهه وقت جي ضرورت آهي، هڪ نئين مضمون سان واقف ٿيڻ لاء. نئين الورورٿم کي فوري طور تي ايپليڪيشن نه ملندي. 

ميٽر: اهو فوري طور تي واضح ناهي ته مضمون اهم هوندو يا نه. مان سمجهان ٿو ته اهو دلچسپ هوندو ته ڪاغذن جو مطالعو ڪرڻ جيڪي ڪانفرنس ۾ انعام حاصل ڪيا آهن. اهو آهي، مضمونن کي ڏسو ته پروگرام ڪميٽين تي ماڻهن هڪ وقت ۾ بهترين سمجهيو. توهان کي لنڪن جي تعداد ۽ ڪاروبار تي اثر انداز ڪرڻ جي ڪوشش ڪرڻ جي ضرورت آهي ته اهي آرٽيڪل حقيقت ۾ 10، 20، 25 سالن ۾ ڪيئن اثر انداز ٿيا. مون کي شڪ آهي ته ٻنهي جي وچ ۾ مضبوط لاڳاپو هوندو. اهو صفر نه هوندو، پر گهڻو ڪري اهو گهڻو ڪمزور هوندو جيڪو اسان چاهيون ٿا. ڪيترائي خيال وڏي عرصي تائين اڻڄاتل رهندا آهن ان کان اڳ جو اهي وسيع ٿي وڃن. مثال طور، اچو ته ٽرانزيڪشنل ياداشت وٺون. 10 سالن کان وڌيڪ وقت گذري ويو جڏهن اصل مضمون شايع ڪيو ويو ان وقت تائين ماڻهن اصل ۾ ان سان مشين ٺاهڻ شروع ڪيو. ۽ تجارتي شين ۾ هن ياداشت جي ظاهر ٿيڻ کان اڳ - ۽ سڀ 20. هڪ ڊگهي وقت تائين ڪو به مضمون ڏانهن ڌيان نه ڏنو، ۽ پوء ان جي لنڪ جو تعداد تيزيء سان وڌي ويو. اهو اڳ ۾ اڳڪٿي ڪرڻ ڏکيو ٿيندو. ٻئي طرف، ڪڏهن ڪڏهن خيالات فوري طور تي عمل درآمد ڳوليندا آهن. ڪجھ سال اڳ، مون DISC لاءِ Joe Izraelevitz سان گڏ ھڪڙو مقالو لکيو ھو جنھن ۾ مسلسل ڊيٽا جي جوڙجڪ لاءِ صحيحيت جي ھڪ نئين باضابطه تعريف پيش ڪئي وئي جيڪا ڪمپيوٽر جي ھلندڙ حادثن کان پوءِ استعمال ٿي سگھي ٿي. مون کي مضمون شروع کان ئي پسند آيو، پر اهو منهنجي توقع کان وڌيڪ مشهور ٿيو. اهو ڪيترن ئي مختلف گروهن پاران استعمال ڪيو ويو ۽ آخرڪار مسلسل جوڙجڪ جي معياري تعريف بڻجي وئي. جيڪو، يقينا، سٺو آهي.

Владимир: ڇا ڪي ٽيڪنڪ آھن جيڪي توھان استعمال ڪندا آھيو تشخيص لاءِ؟ ڇا توھان پنھنجي مضمونن ۽ پنھنجي شاگردن جو جائزو وٺڻ جي ڪوشش ڪندا آھيو؟ ان لحاظ کان ته ڇا جيڪو ماڻهو توهان سيکاريو آهي اهو صحيح طرف وڃي رهيو آهي.

ميٽر: ٻين سڀني وانگر، مان وڌيڪ ڌيان ڏيان ٿو ته آئون هن وقت ڇا ڪري رهيو آهيان. ٻيهر، ٻين سڀني وانگر، آئون ڪڏهن ڪڏهن گوگل اسڪالر کي چيڪ ڪريان ٿو ته ڏسو ته منهنجي ماضي جا مقالا نقل ڪيا پيا وڃن، پر اهو وڌيڪ تجسس کان ٻاهر آهي. گهڻو ڪري مان جذب ٿي چڪو آهيان ته منهنجا شاگرد هاڻي ڇا ڪري رهيا آهن. جڏهن اهو موجوده ڪم جو جائزو وٺڻ لاء اچي ٿو، ان جو حصو جمالياتي خيالات آهي، ڇا خوبصورت آهي ۽ ڇا نه آهي. ۽ روزاني سطح تي، کليل سوال هڪ وڏو ڪردار ادا ڪن ٿا. مثال طور، هڪ شاگرد مون وٽ ڪجهه نتيجن جو گراف کڻي اچي ٿو، ۽ اسان اهو سمجهڻ جي ڪوشش ڪري رهيا آهيون ته گراف جو ڪجهه عجيب رويو ڪٿان آيو آهي. عام طور تي، اسان جي ڪم ۾ اسان مسلسل انهن شين کي سمجهڻ جي ڪوشش ڪري رهيا آهيون جيڪي اسان اڃا تائين نٿا سمجهي سگهون. 

ٽرانزيڪشنل ياداشت

Vitali: ٿي سگهي ٿو اسان ٽرانزيڪشنل ياداشت بابت ٿورڙي ڳالهائي سگهون ٿا؟

ميٽر: منهنجو خيال آهي ته اهو گهٽ ۾ گهٽ چوڻ جي لائق آهي ڇو ته مون ان ۾ تمام گهڻي ڪوشش ڪئي. هي هڪ اهڙو موضوع آهي جنهن تي مون وٽ ٻين کان وڌيڪ اشاعتون آهن. پر ساڳئي وقت، عجيب طور تي ڪافي، مان هميشه ٽرانزيڪشنل ياداشت جي باري ۾ تمام گهڻو شڪي هو. منهنجي خيال ۾، Herlihy ۽ Moss پاران آرٽيڪل (M. Herlihy، J. E.B. Moss) پنهنجي وقت کان اڳ شايع ڪيو ويو. 1990 جي شروعات ۾، انهن تجويز ڪيو ته ٽرانزيڪشنل ميموري باصلاحيت پروگرامرز کي ملٽي ٿريڊڊ ڊيٽا اسٽرڪچرز تي ڪم ڪرڻ ۾ مدد ڪري سگهي ٿي، ته جيئن اهي اڏاوتون وري عام پروگرامرز پاران لائبريرين طور استعمال ڪري سگھجن. اهو آهي، اهو ڊگ لي لاءِ پنهنجي JSR 166 ڪرڻ ۾ مدد ڪندو. پر ٽرانزيڪشنل ميموري جو مقصد ملٽي ٿريڊ پروگرامنگ کي آسان بڻائڻ نه هو. پر اهو ئي آهي ته اهو ڪيئن 2000s جي شروعات ۾ سمجهڻ شروع ڪيو، جڏهن اهو وسيع ٿي ويو. اهو متوازي پروگرامنگ جي مسئلي کي حل ڪرڻ لاء هڪ طريقي جي طور تي اشتهار ڏنو ويو. اهو طريقو هميشه مون کي نا اميد نظر آيو آهي. ٽرانزيڪشنل ياداشت صرف متوازي ڊيٽا جي جوڙجڪ لکڻ کي آسان بڻائي سگهي ٿي. هي، اهو مون کي لڳي ٿو، اهو آهي جيڪو هن حاصل ڪيو. 

گھڻن موضوعن واري ڪوڊ لکڻ جي مشڪل بابت

Алексей: تمام دلچسپ. باقاعده پروگرامرز ۽ انهن جي وچ ۾ هڪ خاص رڪاوٽ لڳي ٿي جيڪي لکي سگهن ٿا ملٽي-ٽيڊڊ ڪوڊ. گذريل سال، مون ڪيترن ئي ڀيرا ڳالهايو ماڻهن سان جيڪي ڪجهه الگورتھمڪ فريم ورڪ تي عمل ڪري رهيا هئا. مثال طور، مارٽن ٿامسن سان گڏ، گڏوگڏ پروگرامرز سان گڏ ملٽي-ٽيڊڊ لائبريرين تي ڪم ڪري رهيا آهن. (ايڊيٽر جو نوٽ: مارٽن ٿامپسن هڪ تمام مشهور ڊولپر آهي، هن لکيو تباھيندڙ и ايون. ۽ هن وٽ پڻ آهي رپورٽ اسان جي جوڪر 2015 ڪانفرنس ۾، وڊيو رڪارڊنگ يوٽيوب تي دستياب آهي. اھو ئي آھي کوليو ويو هن ڪانفرنس اهم رڪارڊنگ پڻ دستياب آهي). مکيه چئلينج، اهي چون ٿا، الگورتھم کي تيز ۽ استعمال ڪرڻ آسان بڻائي رهيو آهي. اهو آهي، اهي هن رڪاوٽ کي ختم ڪرڻ جي ڪوشش ڪري رهيا آهن ۽ هن علائقي ڏانهن ممڪن طور تي ڪيترن ئي ماڻهن کي راغب ڪرڻ جي ڪوشش ڪري رهيا آهن. توهان ان بابت ڇا سوچيو؟

ميٽر: هي ملٽي ٿريڊنگ جو بنيادي مسئلو آهي: سسٽم جي پيچيدگي کي وڌائڻ کان سواءِ اعليٰ ڪارڪردگي ڪيئن حاصل ڪجي. 

Алексей: ڇاڪاڻ ته جڏهن اهي پيچيدگي کان بچڻ جي ڪوشش ڪندا آهن، الورورٿم گهٽ عالمگير ٿي ويندو آهي.

ميٽر: هتي اهم آهي صحيح طرح ٺهيل خلاصيون. اهو مون کي لڳي ٿو ته اهو عام طور تي ڪمپيوٽر سسٽم لاء هڪ فيلڊ جي طور تي بنيادي شيء آهي. بٽلر ليمپسن هن اصطلاح کي استعمال ڪرڻ پسند ڪندو آهي، ۽ هو اسان کي سڏيندو آهي "تاريخ جا سوداگر." سادي ٽيڪنالاجيون اڄ موجود نه آهن. پروسيسر جيڪي اسان استعمال ڪندا آهيون انهن ۾ 10 بلين ٽرانزسٽر آهن- سادگي سوال کان ٻاهر آهي. ساڳئي وقت، ISA پروسيسر جي ڀيٽ ۾ تمام آسان آهي، ڇاڪاڻ ته اسان ان کي اعلي ڪارڪردگي ۽ نسبتا آسان انٽرفيس مهيا ڪرڻ لاء هڪ ڊگهي وقت تائين ڪم ڪيو. پر هن سان گڏ سڀ ڪجهه آسان ناهي. ساڳيو مسئلو تيز ڪندڙ سان آهي جيڪي هاڻي مارڪيٽ تي ظاهر ٿي رهيا آهن. سوال پيدا ٿين ٿا - GPU لاءِ صحيح انٽرفيس ڪيئن ٺاهيو، هڪ انڪرپشن ميڪانيزم، ڪمپريشن، هڪ ٽرانسڪوڊنگ ميڪانيزم، هڪ لڪير الجبرا ميڪانيزم، يا اڃا به وڌيڪ لچڪدار FPGA. هڪ انٽرفيس ڪيئن ٺاهيو جيڪو اوزار کي استعمال ڪرڻ آسان بڻائي ٿو ۽ پيچيدگي کي لڪائي ٿو؟ اهو ان کان نجات حاصل نه ڪندو، بلڪه ان کي هڪ سادي پروگرامر کان لڪايو. 

Алексей: جيئن مان سمجهان ٿو، اسان کي اڃا تائين سمجهڻ ۾ رڪاوٽ آهي. اچو ته يادگيري جو نمونو وٺون، سائنس ۽ ٽيڪنالاجي جي ترقيءَ جي مرحلي ۾، هي هڪ اهم خلاصو آهي. ان جي مهرباني، سڀني پروگرامرن کي ٻن گروپن ۾ ورهايو ويو آهي: وڏو حصو اهي آهن جيڪي نه سمجھندا آهن، ۽ ننڍڙو حصو اهي آهن جيڪي سمجهندا آهن، يا سمجهندا آهن ته اهي سمجهندا آهن. 

ميٽر: اھو ھڪڙو سٺو سوال آھي - ڇا اسان مان ڪو واقعي ياداشت جي ماڊل کي سمجھندو آھي؟

Vitali: خاص ڪري C++ ۾.

ميٽر: هنس بوهام سان ڪجهه وقت ڳالهايو. هو هوشيار ماڻهن مان هڪ آهي جنهن کي مان ڄاڻان ٿو، ميموري ماڊلز تي هڪ معروف ماهر. هو توهان کي فوري طور تي ٻڌائيندو ته اتي تمام گهڻو آهي جيڪو هو سمجهي نٿو سگهي. پر جيڪڏهن اسان تجزين جي مسئلي ڏانهن موٽون ٿا، ته پوء، منهنجي خيال ۾، گذريل 30 سالن ۾ ياداشت جي ماڊل جي ميدان ۾ سڀ کان اهم خيال بيان ڪيو ويو آهي. سريتا ايڊوي جي مقالي ۾. (ايڊيٽر جو نوٽ: اشاعت جي مڪمل فهرست موجود آهي لنڪ).

Алексей: منهنجو سوال آهي: ڇا هي رڪاوٽ تصور جي فطرت مان اچي ٿي؟ 

ميٽر: نه. سريتا ان نتيجي تي پهتو ته صحيح طريقي سان، توهان ڪاميابي سان سڀني پيچيدگي کي لڪائي سگهو ٿا، اعلي ڪارڪردگي حاصل ڪريو ۽ پروگرامر کي هڪ سادي API ڏيو. ۽ جيڪڏهن توهان هن API جي پيروي ڪندا آهيو، توهان حاصل ڪري سگهو ٿا مسلسل لاڳيتو. مان سمجهان ٿو ته اهو صحيح نموني آهي. ڊيٽا ريس کان سواءِ ڪوڊ لکو ۽ ترتيب وار تسلسل حاصل ڪريو. يقينا، ريسنگ جي امڪان کي گهٽائڻ لاء، خاص اوزار جي ضرورت آهي، پر اهو ٻيو معاملو آهي. 

Владимир: ڇا توهان جي ڪيريئر ۾ اهڙا وقت آيا آهن جڏهن ڪو مسئلو جيڪو حل ٿيڻ لڳي اوچتو تباهي ۾ تبديل ٿي ويو، يا اهو ظاهر ٿيو ته اهو مسئلو ناقابل حل هو؟ مثال طور، نظريي ۾ توهان ڪنهن به نمبر کي فيڪٽر ڪري سگهو ٿا يا اهو طئي ڪري سگهو ٿا ته ڇا ڪو نمبر وزيراعظم آهي. پر عملي طور تي اهو ڪرڻ ڏکيو ٿي سگهي ٿو، موجوده هارڊويئر سان انگن کي فڪر ڪرڻ ڏکيو آهي. ڇا توهان سان به ڪجهه ائين ٿيو آهي؟

ميٽر: مون کي فوري طور تي ڪجهه به ياد ناهي. اهڙا وقت آيا آهن جڏهن مون کي اهو محسوس ٿيو ته ڪنهن خاص علائقي ۾ ڪرڻ لاء ڪجهه به ناهي، پر پوء اتي ڪجهه نئون ۽ دلچسپ ٿيو. مثال طور، مون سوچيو ته لامحدود قطار جو علائقو اڳ ۾ ئي پختگي تي پهچي چڪو هو. MNS قطار ۾ ڪيترن ئي سڌارن کان پوء، ڪجھ به نه ٿيو. ۽ پوءِ موريسن (آدم موريسن) ۽ افيڪ (يهودا افيڪ) ايجاد ڪيا. LCRQ قطار. اهو واضح ٿي ويو ته هڪ لامحدود گھڻن موضوعن واري قطار ممڪن هئي، جتي اڪثر وقت صرف نازڪ رستي تي آڻڻ ۽ وڌائڻ واري هدايت هئي. ۽ اهو ممڪن ڪيو ته بهتر ڪارڪردگي جو آرڊر حاصل ڪرڻ. اهو نه آهي ته اسان کي خبر ناهي ته آڻڻ ۽ واڌارو هڪ تمام مفيد شيء آهي. Eric Freudenthal 1980 جي آخر ۾ الٽرا ڪمپيوٽر تي الٽرا ڪمپيوٽر تي پنهنجي ڪم ۾ ايلن گوٽليب سان ان بابت لکيو، پر اهو محدود قطارن بابت هو. موريسن ۽ افيڪ هڪ بيحد قطار تي آڻڻ ۽ واڌارو استعمال ڪرڻ جي قابل هئا.

جديد فن تعمير. ڇا ٽرانزيڪشنل ياداشت جي فتح ويجهو آهي؟

Владимир: ڇا توھان ڳولي رھيا آھيو نوان تعميراتي حل جيڪي ڪارآمد ٿي سگھن الورورٿمس لاءِ؟ 

ميٽر: يقينن، ڪيتريون ئي شيون آهن جن تي عمل درآمد ڏسڻ چاهيان ٿو. 

Владимир: ڪهڙي قسم جو، مثال طور؟

ميٽر: سڀ کان پهريان، Intel ۽ IBM پروسيسرز ۾ اسان جي هارڊويئر-سطح ٽرانزيڪشنل ميموري لاءِ ڪجھ سادي واڌايون. خاص طور تي، مان چاهيان ٿو غير ٽرانزيڪشنل لوڊ ۽ اسٽور جيڪو فوري طور تي ٽرانزيڪشن جي اندر موجود هجي. اهي فوري طور تي ٿيڻ کان اڳ واري ترتيب ۾ لوپس ڏانهن ويندا آهن، تنهنڪري اهي مشڪل ٿي سگهن ٿيون. پر جيڪڏهن توهان تجريد جي پرت کي برقرار رکون ٿا، اتي تمام گهڻيون دلچسپ شيون آهن جيڪي توهان ٽرانزيڪشن کان ٻاهر ڪري سگهو ٿا جڏهن اهو ٿي رهيو آهي. مون کي خبر ناهي ته اهو عمل ڪرڻ ڪيترو ڏکيو هوندو، پر اهو تمام مفيد هوندو. 

ٻي مفيد شيءِ آهي لوڊ ڪندي ڪيش ريموٽ ميموري مان. مان سمجهان ٿو ته جلد يا بعد ۾ اهو ٿي ويندو. هي ٽيڪنالوجي اجازت ڏيندو سسٽم ٺاهڻ جي جدا جدا ياداشت سان. اهو رکڻ ممڪن هوندو، چئجي ته، 100 ٽيرا بائيٽ جي غير وولٽائل ميموري کي ريڪ ۾، ۽ آپريٽنگ سسٽم پاڻ متحرڪ طور تي فيصلو ڪندو ته ان ميموري جا ڪهڙا حصا پروسيسرز جي فزيڪل ايڊريس اسپيس سان مطابقت رکن. هي ڪلائوڊ ڪمپيوٽنگ لاءِ انتهائي ڪارائتو هوندو، ڇاڪاڻ ته اها ميموري جي وڏي مقدار کي انهن ڪمن لاءِ فراهم ڪرڻ جي اجازت ڏئي ٿي جن کي ان جي ضرورت آهي. مان سمجهان ٿو ته ڪو اهو ڪندو.

Vitali: ٽرانزيڪشنل ياداشت جي باري ۾ ڳالهائڻ ختم ڪرڻ لاء، مون وٽ هن موضوع تي هڪ وڌيڪ سوال آهي. ڇا ٽرانزيڪشنل ميموري آخرڪار معياري ملٽي-ٽيڊڊ ڊيٽا ڍانچي کي تبديل ڪندو؟

ميٽر: نه. ٽرانزيڪشن هڪ قياسي ميڪانيزم آهي. پروگرامنگ جي سطح تي اهي ايٽمي لاڪ آهن، پر اندر اهي قياس آهن. اهڙي اڳڪٿي ڪم ڪري ٿي جيڪڏهن اڪثر اندازا صحيح هجن. تنهن ڪري، ٽرانزيڪشنل ياداشت سٺو ڪم ڪري ٿي جڏهن موضوع هڪ ٻئي سان سختي سان لهه وچڙ ۾ اچن ٿا، ۽ توهان کي صرف پڪ ڪرڻ جي ضرورت آهي ته ڪو به تعامل نه آهي. پر جيڪڏهن هڪ پيغام موضوعن جي وچ ۾ شروع ٿئي ٿو، ٽرانزيڪشن ٿورڙي فائدي جا آهن. مون کي وضاحت ڪرڻ ڏيو، اسان ڪيس بابت ڳالهائي رهيا آهيون جڏهن ٽرانزيڪشن سڄي ايٽمي آپريشن جي چوڌاري لپي ويندا آهن. اهي اڃا تائين ڪاميابيءَ سان استعمال ڪري سگھجن ٿا ملٽي ٿريڊ ڊيٽا ڍانچي لاءِ اجزاء طور. مثال طور، جيڪڏهن توهان کي ٽن لفظن جي CAS جي ضرورت آهي، ۽ توهان کي هڪ حقيقي ملٽي ٿريڊ الگورٿم جي وچ ۾ ٽن ننڍين شين کي ملائي ٿريڊ ڪرڻ جي ضرورت آهي جيڪا هڪ ئي وقت ويهن ٿريڊن سان ڪم ڪري ٿي. عام طور تي، ٽرانزيڪشن ڪارائتو ٿي سگهي ٿو، پر انهن کي ختم نه ڪندو مناسب طريقي سان ملائي-ٽيڊڊ ڊيٽا جي جوڙجڪ کي ڊزائين ڪرڻ جي ضرورت. 

غير مستحڪم ياداشت، Optane DIMM، الٽرا فاسٽ ڊوائيسز.

Vitali: آخري شيء جيڪا مان ڳالهائڻ چاهيندس توهان جي موجوده تحقيق جو موضوع آهي: غير مستحڪم ياداشت. اسان هن علائقي ۾ ويجهي مستقبل ۾ ڇا اميد ڪري سگهون ٿا؟ ٿي سگهي ٿو توهان کي ڪنهن به اثرائتي عمل جي ڄاڻ آهي ته اڳ ۾ ئي موجود آهي؟ 

ميٽرمان هارڊويئر جو ماهر نه آهيان، مان صرف اهو ڄاڻان ٿو ته آئون خبرون ۾ ڇا پڙهان ٿو ۽ منهنجا ساٿي مون کي ڇا ٿا چون. هرڪو اڳ ۾ ئي ٻڌو آهي ته Intel وڪرو ڪري ٿو Optane DIMM، جنهن ۾ 3 ڀيرا پڙهڻ واري دير ۽ 10 ڀيرا لکڻ جي دير آهي متحرڪ رام جي ڀيٽ ۾. اهي جلد ئي تمام وڏي مقدار جي نسخن ۾ دستياب ٿي ويندا. اهو سوچڻ عجيب آهي ته توهان وٽ هڪ ليپ ٽاپ ٿي سگهي ٿو ڪيترن ئي ٽيرا بائيٽ بائيٽ ايڊريس ريم سان. اهو امڪان آهي ته 10 سالن ۾ اسان هن نئين ٽيڪنالاجي کي استعمال ڪرڻ جو فيصلو ڪنداسين، ڇو ته اسان DRAM استعمال ڪندا آهيون - صرف حجم وڌايو. پر توانائي جي آزادي جي مهرباني، مڪمل طور تي نوان موقعا اسان لاء کليل آهن. اسان بنيادي طور تي اسٽوريج اسٽيڪ کي تبديل ڪري سگھون ٿا ته جيئن بائيٽ ايڊريس ايبل ڪم ڪندڙ ميموري ۽ بلاڪ تعمير ٿيل مسلسل ياداشت جي وچ ۾ ڪو به علحدگي نه هجي. ان ڪري، اسان کي هر شي کي سيريل ڪرڻ جي ضرورت نه پوندي جيڪا هڪ پروگرام کان ٻئي ڏانهن منتقل ٿيڻ جي ضرورت آهي بلاڪ ٺهيل فائلن ۾. ان مان اسان ڪيترائي اھم اصول حاصل ڪري سگھون ٿا جيڪي آپريٽنگ سسٽم، رن ٽائم ماحول، ۽ ورهايل ڊيٽا اسٽورن کي متاثر ڪن ٿا. هن علائقي ۾ ڪم ڪرڻ لاء تمام دلچسپ آهي. ذاتي طور تي، مون لاءِ اڳڪٿي ڪرڻ مشڪل آهي ته هي سڀ ڇا ٿيندو، پر هتي مسئلا انتهائي دلڪش آهن. هتي انقلابي تبديليون ٿي سگهن ٿيون، ۽ اهي ملٽي ٿريڊنگ جي ڪم کان بلڪل قدرتي طور تي عمل ڪن ٿيون، ڇاڪاڻ ته ناڪامي جي بحالي سسٽم جي عام آپريشن جي اڳيان هڪ ”ملٽي ٿريڊنگ“ وارو عمل آهي. 

ٻيو مکيه موضوع جنهن تي آئون هن وقت ڪم ڪري رهيو آهيان الٽرا فاسٽ ڊوائيسز جو انتظام ڪرڻ ۽ سسٽماتي پاليسي ڪنٽرول سان صارفين جي اسپيس کان ڊوائيسز تائين محفوظ رسائي. تازن سالن ۾، ڊوائيس تائين رسائي کي يوزر اسپيس تائين منتقل ڪرڻ جو رجحان ٿي چڪو آهي. اهو ٿي چڪو آهي ڇاڪاڻ ته TCP-IP ڪنيال اسٽيڪ هڪ نيٽ ورڪ انٽرفيس جي چوٽي تي ڪم نٿو ڪري سگهي جنهن کي هر 5 مائڪرو سيڪنڊن ۾ نئين پيڪٽ جي ضرورت هوندي آهي. تنهن ڪري، ٺاهيندڙن ڊوائيسز تائين سڌو رسائي فراهم ڪن ٿا. پر هن جو مطلب اهو آهي ته آپريٽنگ سسٽم پروسيس جو ڪنٽرول وڃائي ٿو ۽ اهو مقابلي واري ايپليڪيشنن لاء ڊوائيس تائين مناسب رسائي فراهم نٿو ڪري سگهي. اسان جي تحقيقي ٽيم کي يقين آهي ته هن گهٽتائي کان بچي سگهجي ٿو. اسان وٽ هن مهيني تي USENIX ATC تي هڪ مضمون هوندو. اهو تسلسل تي ڪم ڪرڻ سان لاڳاپيل آهي، ڇاڪاڻ ته ڊگھي عرصي تائين بائيٽ ايڊريسبل مستقل ياداشت آهي، جوهر ۾، هڪ ڊوائيس الٽرا فاسٽ I/O سان آهي جنهن کي استعمال ڪندڙ اسپيس ۾ پهچڻ جي ضرورت آهي. هي تحقيق ممڪن بڻائي ٿي مائڪرو ڪارنلز، exokernels، ۽ ٻين روايتي ڪوششن لاءِ نئين طريقي سان ڪارڪردگي کي محفوظ طور تي او ايس ڪرنل کان يوزر اسپيس ڏانهن منتقل ڪرڻ لاءِ. 

Владимирبائيٽ ايڊريس ايبل ياداشت عظيم آهي، پر اتي هڪ جسماني حد آهي - روشني جي رفتار. هن جو مطلب اهو آهي ته اتي لازمي طور تي دير ٿي ويندي جڏهن ڊوائيس سان لهه وچڙ ۾. 

ميٽر: بلڪل صحيح.

Владимир: ڇا نئين لوڊشيڊنگ کي منهن ڏيڻ جي ڪافي گنجائش هوندي؟

ميٽر: هي هڪ بهترين سوال آهي، پر ان جو جواب ڏيڻ مون لاءِ مشڪل هوندو. ميموري ۾ پروسيسنگ جو خيال ڪافي عرصي تائين آهي، اهو تمام دلچسپ آهي، پر تمام پيچيده پڻ. مون هن علائقي ۾ ڪم نه ڪيو آهي، پر اهو سٺو ٿيندو جيڪڏهن ڪجهه دريافتون اتي ڪيون ويون آهن. مون کي ڊپ آهي ته مون وٽ شامل ڪرڻ لاء وڌيڪ ڪجهه ناهي. 

Владимир: هڪ ٻيو مسئلو آهي. نئين، خاص طور تي وڏي مقدار ۾ ريم کي سي پي يو ۾ فٽ ڪرڻ ناممڪن ٿي ويندو. تنهن ڪري، جسماني حدن جي ڪري، هن رام کي الڳ ٿيڻ گهرجي. 

ميٽر: اهو سڀ منحصر سرڪٽ جي پيداوار ۾ خرابين جي تعداد تي منحصر آهي. جيڪڏهن اهو ممڪن آهي ته مڪمل طور تي بغير ڪنهن خرابين جي سيمي ڪنڊڪٽر ويفرز ٺاهڻ، پوء اهو ممڪن آهي ته ان مان هڪ مڪمل مائڪرو سرڪٽ ٺاهڻ. پر هاڻي اسان کي خبر ناهي ته پوسٽ اسٽيمپن کان وڌيڪ مائڪرو سرڪٽ ڪيئن ٺاهيو وڃي. 

Владимир: پر اسان اڃا تائين وڏي سائيز بابت ڳالهائي رهيا آهيون، سينٽي ميٽر بابت. اهو ناگزير طور تي دير سان اثر انداز ٿئي ٿو. 

ميٽر: ها. روشنيءَ جي رفتار بابت ڪجھ به نه ٿو ڪري سگھجي. 

Владимир: بدقسمتي سان. 

ايندڙ وڏو رجحان. ٻٽي ڊيٽا جي جوڙجڪ. هائيڊرا.

Vitali: جيتري قدر مان سمجهان ٿو، توهان تمام جلدي نوان رجحانات کي پڪڙيندا آهيو. توهان ٽرانزيڪشنل ميموري ۾ ڪم ڪرڻ وارن پهرين مان هڪ هئا، ۽ غير مستحڪم ياداشت ۾ ڪم ڪرڻ وارن پهرين مان هڪ. توهان ڇا سوچيو ته ايندڙ وڏو رجحان ٿيندو؟ يا شايد اهو هڪ راز آهي؟

ميٽر: سچ پڇو، مون کي خبر ناهي. اميد اٿم ته مون کي خبر پئجي ويندي جڏهن ڪا نئين شيء اچي. مان ايترو خوش نصيب نه رهيو آهيان جو پاڻ ڪو به نئون ميدان ايجاد ڪري سگهان، پر مون کي ڪجهه قسمت ملي آهي ۽ ٻين جي ٺاهيل نون شعبن ۾ جلد ئي ڪم شروع ڪري سگهيو آهيان. مون کي اميد آهي ته مان مستقبل ۾ اهو ڪرڻ جي قابل ٿي ويندس.

Алексей: هن انٽرويو ۾ آخري سوال هائڊرا ۾ توهان جي ڪارڪردگي ۽ اسڪول ۾ توهان جي سرگرمين بابت هوندو. جيڪڏهن مان صحيح سمجهان ٿو، اسڪول ۾ رپورٽ بلاڪنگ فري الگورٿمز بابت، ۽ ڪانفرنس ۾ ڊبل ڊيٽا جي جوڙجڪ بابت هوندي. ڇا توھان انھن رپورٽن بابت ڪجھ لفظ چئي سگھو ٿا؟

ميٽر: جزوي طور تي، اسان اڳ ۾ ئي هن انٽرويو ۾ توهان سان انهن عنوانن تي ڳالهايو آهي. اهو ڪم بابت آهي جيڪو مون پنهنجي شاگرد بل شيرر سان ڪيو. هن ان تي هڪ مقالو لکيو، ۽ ڊگ لي پڻ ان ۾ حصو ورتو، ۽ اهو آخرڪار جاوا لائبريري ۾ گهڻن موضوعن واري هم وقت ساز قطار جو حصو بڻجي ويو. اچو ته فرض ڪريون ته ڊيٽا جو ڍانچو پڙهيو ۽ لکيل آهي بغير بلاڪ ڪرڻ، يعني هر آپريشن ۾ محدود تعداد ۾ هدايتون آهن نازڪ رستي تي. جيڪڏهن توهان هڪ خالي ڪنٽينر مان ڊيٽا کي هٽائڻ جي ڪوشش ڪندا آهيو، يا ڪجهه ڊيٽا کي هٽائڻ جي ڪوشش ڪندا آهيو جيڪا هن ڪنٽينر ۾ نه آهي، توهان کي فوري طور تي ٻڌايو ويندو ته اهو نه ٿو ڪري سگهجي. پر اهو رويو قابل قبول نه هوندو جيڪڏهن ٿريڊ کي واقعي هن ڊيٽا جي ضرورت هجي. پوء پهرين شيء جيڪا ذهن ۾ اچي ٿي اهو هڪ لوپ ٺاهڻ آهي جيڪو مسلسل پڇندو ته ضروري ڊيٽا ظاهر ٿيو آهي. پر پوءِ به هر ڪنهن لاءِ مداخلت آهي. اضافي طور تي، هن طريقي سان، توهان 10 منٽن جو انتظار ڪري سگهو ٿا، ۽ پوء ڪجهه ٻيو سلسلو ايندو، ۽ اهو غلط طور تي ضروري ڊيٽا حاصل ڪندو. ٻٽي ڊيٽا جي جوڙجڪ اڃا تائين لاڪ نه آهن، پر اهي موضوعن کي صحيح طور تي انتظار ڪرڻ جي اجازت ڏين ٿا. اصطلاح "ڊبل" جو مطلب آهي ته ڍانچي ۾ يا ته ڊيٽا يا ڊيٽا لاء درخواستون شامل آهن، اچو ته انهن کي مخالف ڊيٽا سڏين. تنهن ڪري جيڪڏهن توهان هڪ خالي ڪنٽينر مان ڪجهه حاصل ڪرڻ جي ڪوشش ڪندا، هڪ درخواست ان جي بدران ڪنٽينر ۾ رکي ويندي. ھاڻي ھي موضوع ڪنھن ٻئي کي پريشان ڪرڻ کان سواءِ درخواست جو انتظار ڪري سگھي ٿو. اضافي طور تي، ڊيٽا جي جوڙجڪ درخواستن کي ترجيحن کي تفويض ڪري ٿو ته جيئن وصول ڪيو وڃي، اهو انهن کي صحيح شخص ڏانهن منتقل ڪري ٿو. نتيجو هڪ غير بند ڪرڻ وارو ميڪانيزم آهي جيڪو اڃا تائين هڪ رسمي وضاحت ۽ عمل ۾ سٺي ڪارڪردگي آهي. 

Алексей: هن ڊيٽا جي جوڙجڪ مان توهان جون اميدون ڇا آهن؟ ڇا اهو سڀني عام ڪيسن ۾ ڪارڪردگي بهتر ڪندو، يا اهو بهتر آهي ته ڪجهه حالتن لاءِ مناسب؟ 

ميٽر: اهو مفيد آهي جيڪڏهن، پهرين، توهان کي بغير بغير ڪنهن ڪنٽينر جي ضرورت آهي، ۽ ٻيو، توهان کي اهڙي صورتحال ۾ انتظار ڪرڻو پوندو جتي توهان کي ڪنٽينر مان ڊيٽا حاصل ڪرڻ جي ضرورت آهي جيڪا ان ۾ نه آهي. منهنجي ڄاڻ جي چڱيءَ ريت، اسان جو فريم ورڪ بهترين رويو مهيا ڪري ٿو جڏهن اهي ٻه شرط پورا ٿين ٿا. تنهن ڪري، انهن حالتن ۾ آئون ان کي استعمال ڪرڻ جي صلاح ڏيان ٿو. lockless ڊيٽا جي جوڙجڪ جو بنيادي فائدو اهو آهي ته اهي ڪارڪردگي جي مسئلن کان پاسو ڪندا آهن. ۽ انتظار ڪيترن ئي الگورتھم ۾ تمام ضروري آهي جيڪڏهن ڊيٽا هڪ سلسلي کان ٻئي ڏانهن منتقل ڪيو وڃي.

Vitali: مون کي واضح ڪرڻ ڏيو: ڇا توهان اسڪول ۽ ڪانفرنس ۾ ساڳئي شيء بابت ڳالهائيندا آهيو؟

ميٽر: اسڪول ۾ مان ڳالهائيندس عام طور تي گھڻن موضوعن واري ڊيٽا جي جوڙجڪ بابت، بنيادي اصولن سان گڏ سبق جي شروعات ۾ بيان ڪيل. مان سمجهان ٿو ته سامعين کي خبر آهي ته ڪهڙا موضوع آهن ۽ تالا کان واقف آهن. هن بنيادي ڄاڻ جي بنياد تي، مان ڳالهائيندس لاڪ فري ڊيٽا جي جوڙجڪ بابت. مان هن علائقي ۾ سڀ کان اهم مسئلن جو هڪ جائزو ڏيندس، موضوع تي ڇڪڻ جهڙوڪ ياداشت جي انتظام. مان نه ٿو سمجهان ته اتي MS قطار کان وڌيڪ پيچيده ڪجھ به نه ٿيندو.

Алексей: ڇا توهان اسڪول ۾ پنهنجي ڪلاس جي آخر ۾ ڊبل ڊيٽا ڍانچي جي باري ۾ سکڻ جي رٿابندي ڪري رهيا آهيو؟

ميٽر: مان انهن جو ذڪر ڪندس، پر انهن تي گهڻو وقت نه گذاريندس. هائڊرا جي رپورٽ انهن لاءِ وقف ڪئي ويندي. اهو پروجيڪٽ کي ڍڪيندو جيڪو آخرڪار ان کي جاوا ۾ ٺاهيو، انهي سان گڏ جوئي اسرائيلوچ سان گڏ ڪم ڪرڻ لاء LCRQ قطار جي ٻٽي ويرينٽ ٺاهي، ۽ ڊبل ڊيٽا جي جوڙجڪ لاء ويجھي آفاقي ڊيزائن ٺاهي.

Алексей: تنهنڪري اسڪول ۾ ليڪچر شروع ڪندڙن لاءِ سفارش ڪري سگهجي ٿو، ۽ هائڊرا تي ڊبل ڊيٽا جي جوڙجڪ تي ليڪچر - انهن ماڻهن لاءِ جن کي اڳ ۾ ئي ڪجهه تجربو آهي؟

ميٽر: مون کي درست ڪريو جيڪڏهن مان غلط آهيان، پر هائڊرا ۾ سامعين ڪافي متنوع هوندا، جن ۾ جاوا جا ڪيترائي ماهر، ۽ عام طور تي اهي ماڻهو جيڪي خاص طور تي ملٽي ٿريڊ پروگرامنگ ۾ شامل نه هوندا آهن. 

Vitali: ها، اهو سچ آهي.

Алексей: گهٽ ۾ گهٽ اسان کي اميد آهي ته.

ميٽر: هن معاملي ۾، مون کي ساڳئي مسئلي سان منهن ڏيڻو پوندو، جنهن سان اسان هن انٽرويو کي شروع ڪيو آهي: هڪ رپورٽ ڪيئن ٺاهيو وڃي ٻنهي ٽيڪنيڪل تفصيلن سان ڀرپور ۽ سڀني ٻڌندڙن تائين رسائي.

Vitali: ڇا توهان اهڙيءَ طرح رپورٽ ڏيندا جيئن توهان ليڪچر ڏيندا آهيو؟ اهو آهي، سامعين سان ڳالهايو ۽ صورتحال کي اپنائڻ؟

ميٽر: مون کي ڊپ آهي ته اهو ان طريقي سان ڪم نه ڪندو، ڇاڪاڻ ته رپورٽ ۾ سلائڊ هوندي. سلائڊ اھم آھن جڏھن ٻڌندڙ شروعاتي طور تي مختلف ٻوليون ڳالھائيندا آھن. گھڻن ماڻھن کي مون کي انگريزيءَ ۾ سمجھڻ ۾ ڏکيائي ٿيندي، خاص ڪري جيڪڏھن آءٌ تمام جلد ڳالھايان. مون انهن عنوانن کي چونڊيو آهي ڇاڪاڻ ته پيٽر Kuznetsov مون کي SPTDC اسڪول ۾ لاڪ فري ڊيٽا اسٽرڪچرز بابت ڳالهائڻ لاءِ چيو؛ ۽ پوءِ مون کي جاوا يوزر گروپ ڪانفرنس لاءِ رپورٽ جي ضرورت هئي، ۽ مان ڪجهه چونڊڻ چاهيان ٿو جيڪو خاص طور تي جاوا پروگرامرز لاءِ دلچسپيءَ جو هجي. سڀ کان آسان طريقو اهو هو ته جاوا لائبريري ۾ انهن شين جي باري ۾ ڳالهائڻ جو هڪ يا ٻئي طريقي سان منهنجو هٿ هو. 

Алексей: اسان فرض ڪريون ٿا ته هائڊرا تي سامعين اڳ ۾ ئي ڪجهه ڄاڻن ٿا لاڪ فري پروگرامنگ بابت ۽ شايد هن علائقي ۾ ڪجهه تجربو آهي. پر اهو صرف هڪ مفروضو آهي؛ ڪانفرنس ۾ ئي صورتحال واضح ٿي ويندي. بهرحال، توهان جي وقت لاء مهرباني. مون کي پڪ آهي ته انٽرويو اسان جي پڙهندڙن لاء ڏاڍو دلچسپ هوندو. تمام گهڻي مهرباني!

Vitali: تنهنجي مهرباني. 

ميٽر: مون کي توهان سان سينٽ پيٽرسبرگ ۾ ملائي خوشي ٿيندي. 

Алексей: اسان جو به ته سهڻو شهر آهي. ڇا توهان ڪڏهن هتي آيا آهيو؟

ميٽر: نه، مان ڪڏهن به روس نه ويو آهيان. پر سينٽ پيٽرسبرگ هميشه انهن هنڌن جي لسٽ ۾ رهيو آهي جتي مان اڃا تائين نه ويو آهيان، پر جتي مان واقعي وڃڻ چاهيان ٿو، تنهنڪري مون کي دعوت تي ڏاڍي خوشي ٿي. 

Алексей: رستي ۾، اسان وٽ ڳالهائيندڙن لاء گهمڻ جو پروگرام هوندو. انٽرويو لاء توهان جي تمام گهڻو مهرباني، ۽ هڪ سٺو ڏينهن آهي!

توھان ھائڊرا 2019 ڪانفرنس ۾ مائيڪل سان پنھنجي گفتگو جاري رکي سگھو ٿا، جيڪا 11-12 جولاءِ 2019 تي سينٽ پيٽرسبرگ ۾ ٿيندي. هو رپورٽ کڻي ايندو "ٻئي ڊيٽا جي جوڙجڪ". ٽڪيٽون خريد ڪري سگھجن ٿيون سرڪاري ويب سائيٽ تي.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو