- ជាសាស្រ្តាចារ្យផ្នែកវិទ្យាសាស្ត្រកុំព្យូទ័រនៅសាកលវិទ្យាល័យ Rochester ហើយនៅឯផ្ទះរបស់គាត់នៅសាកលវិទ្យាល័យ Wisconsin-Madison គាត់គឺជាព្រឹទ្ធបុរសអស់រយៈពេលប្រាំឆ្នាំ។ គាត់ស្រាវជ្រាវ និងបង្រៀនសិស្សអំពីកម្មវិធីប៉ារ៉ាឡែល និងចែកចាយ និងការរចនាភាសា។
ពិភពលោកស្គាល់ Michael ពីសៀវភៅសិក្សា , ចុះការងារវិញ? បានទទួលរង្វាន់ Dijkstra ជាក្រុមហ៊ុនដ៏ល្បីល្បាញបំផុតមួយក្នុងវិស័យកុំព្យូទ័រចែកចាយ។ អ្នកក៏អាចស្គាល់គាត់ថាជាអ្នកនិពន្ធនៃក្បួនដោះស្រាយនោះ។ .
រួមគ្នាជាមួយ Doug Lee គាត់បានបង្កើតក្បួនដោះស្រាយមិនទប់ស្កាត់ និងជួរធ្វើសមកាលកម្មដែលផ្តល់ថាមពលដល់បណ្ណាល័យ Java ។ ការអនុវត្ត នៅក្នុង JavaSE 6 ធ្វើឱ្យប្រសើរឡើងនូវការអនុវត្ត 10 ដង ThreadPoolExecutor.
មាតិកា:
- អាជីពដំបូងនៅសាកលវិទ្យាល័យ Rochester ។ គម្រោង Charlotte, ភាសា Lynx;
- IEEE Scalable Coherent Interface, MCS locking;
- ការរស់រានមានជីវិតនៅក្នុងពិភពលោកដែលមិនធ្លាប់មានការផ្លាស់ប្តូរ;
- តើសិស្សក្លាយជាមនុស្សល្ងង់មែនទេ? និន្នាការសកល, អន្តរជាតិ;
- ការងារប្រកបដោយប្រសិទ្ធភាពជាមួយសិស្ស;
- របៀបបន្តរៀបចំវគ្គសិក្សា និងសៀវភៅថ្មីៗ;
- ទំនាក់ទំនងរវាងអាជីវកម្ម និងបណ្ឌិត្យសភា;
- ការអនុវត្តជាក់ស្តែងនៃគំនិត។ MCS, MS, CLH, JSR 166, ធ្វើការជាមួយ Doug Lee និងច្រើនទៀត;
- អង្គចងចាំប្រតិបត្តិការ;
- ស្ថាបត្យកម្មថ្មី។ ជ័យជំនះនៃការចងចាំប្រតិបត្តិការគឺនៅជិត;
- អង្គចងចាំដែលមិនងាយនឹងបង្កជាហេតុ, Optane DIMM, ឧបករណ៍ដែលមានល្បឿនលឿនបំផុត;
- និន្នាការធំបន្ទាប់។ រចនាសម្ព័ន្ធទិន្នន័យពីរ។ អ៊ីដ្រា។
ការសម្ភាសន៍ធ្វើឡើងដោយ៖
Vitaly Aksenov - បច្ចុប្បន្នជា postdoc នៅ IST Austria និងជាសមាជិកនៃនាយកដ្ឋានបច្ចេកវិទ្យាកុំព្យូទ័រនៅសាកលវិទ្យាល័យ ITMO ។ ធ្វើការស្រាវជ្រាវក្នុងវិស័យទ្រឹស្តី និងការអនុវត្តរចនាសម្ព័ន្ធទិន្នន័យប្រកួតប្រជែង។ មុនពេលធ្វើការនៅ IST គាត់បានទទួលបណ្ឌិតរបស់គាត់ពីសាកលវិទ្យាល័យ Paris Diderot និងសាកលវិទ្យាល័យ ITMO ក្រោមការគ្រប់គ្រងរបស់សាស្រ្តាចារ្យ Peter Kuznetsov ។
Alexey Fedorov គឺជាអ្នកផលិតនៅក្រុមហ៊ុន JUG Ru Group ដែលជាក្រុមហ៊ុនរុស្ស៊ីដែលរៀបចំសន្និសីទសម្រាប់អ្នកអភិវឌ្ឍន៍។ Alexey បានចូលរួមក្នុងការរៀបចំសន្និសីទជាង 50 ហើយប្រវត្តិរូបសង្ខេបរបស់គាត់មានអ្វីគ្រប់យ៉ាងចាប់ពីមុខតំណែងជាវិស្វករអភិវឌ្ឍន៍នៅ Oracle (JCK, Java Platform Group) រហូតដល់មុខតំណែងអ្នកអភិវឌ្ឍន៍នៅ Odnoklassniki ។
Vladimir Sitnikov គឺជាវិស្វករនៅក្រុមហ៊ុន Netcracker ។ អស់រយៈពេលដប់ឆ្នាំហើយដែលគាត់បានធ្វើការលើការអនុវត្ត និងការធ្វើមាត្រដ្ឋាននៃ NetCracker OS ដែលជាកម្មវិធីដែលប្រើដោយប្រតិបត្តិករទូរគមនាគមន៍ដើម្បីធ្វើស្វ័យប្រវត្តិកម្មដំណើរការគ្រប់គ្រងបណ្តាញ និងឧបករណ៍បណ្តាញ។ ចាប់អារម្មណ៍លើបញ្ហាប្រតិបត្តិការ Java និង Oracle Database ។ អ្នកនិពន្ធនៃការកែលម្អការអនុវត្តច្រើនជាងដប់នៅក្នុងកម្មវិធីបញ្ជា PostgreSQL JDBC ផ្លូវការ។
អាជីពដំបូងនៅសាកលវិទ្យាល័យ Rochester ។ គម្រោង Charlotte, ភាសា Lynx ។
Алексей៖ ដើម្បីចាប់ផ្តើម ខ្ញុំចង់ប្រាប់អ្នកថា នៅក្នុងប្រទេសរុស្ស៊ី យើងទាំងអស់គ្នាពិតជាចូលចិត្តវិទ្យាសាស្ត្រកុំព្យូទ័រ វិទ្យាសាស្រ្តទិន្នន័យ និងក្បួនដោះស្រាយ។ វាជារឿងអាសអាភាស។ យើងបានអានអ្វីៗទាំងអស់។ . ដូច្នេះ សន្និសីទនាពេលខាងមុខ សាលារៀន និងបទសម្ភាសន៍នេះ គួរតែមានប្រជាប្រិយភាពខ្លាំង។ យើងបានទទួលសំណួរជាច្រើនសម្រាប់ការសម្ភាសន៍នេះពីសិស្ស អ្នកសរសេរកម្មវិធី និងសមាជិកសហគមន៍ ដូច្នេះយើងសូមថ្លែងអំណរគុណយ៉ាងជ្រាលជ្រៅចំពោះឱកាសនេះ។ តើវិទ្យាសាស្ត្រកុំព្យូទ័រទទួលបានសេចក្តីស្រឡាញ់ដូចគ្នានៅសហរដ្ឋអាមេរិកទេ?
ម៉ៃឃើល៖ វិស័យរបស់យើងមានភាពចម្រុះណាស់ វាមានទិសដៅច្រើន ហើយវាប៉ះពាល់ដល់សង្គមក្នុងទម្រង់ផ្សេងៗគ្នាជាច្រើន ដែលវាពិបាកសម្រាប់ខ្ញុំក្នុងការផ្តល់ចម្លើយច្បាស់លាស់ដល់អ្នក។ ប៉ុន្តែការពិតគឺថាវាបាននាំមកនូវការផ្លាស់ប្តូរយ៉ាងខ្លាំងនៅក្នុងអាជីវកម្ម ឧស្សាហកម្ម សិល្បៈ និងសង្គមជាទូទៅក្នុងរយៈពេល 30 ឆ្នាំកន្លងមកនេះ។
វីតាលី៖ ចូរចាប់ផ្តើមជាមួយនឹងអ្វីដែលនៅឆ្ងាយ។ នៅក្នុងសាកលវិទ្យាល័យជាច្រើនមានអ្វីមួយដូចជា ឯកទេស នៅក្នុងតំបន់ជាក់លាក់មួយ។ សម្រាប់សាកលវិទ្យាល័យ Carnegie Mellon នេះគឺជាការគណនាប៉ារ៉ាឡែល សម្រាប់ MIT វាគឺជាការគ្រីបរូបវិទ្យា មនុស្សយន្ត និង multithreading ។ តើមានជំនាញបែបនេះនៅសាកលវិទ្យាល័យ Rochester ដែរឬទេ?
ម៉ៃឃើល៖ និយាយឱ្យត្រង់ទៅ ខ្ញុំចង់និយាយថា CMU និង MIT មានឯកទេសលើគ្រប់វិស័យ។ នាយកដ្ឋានរបស់យើងតែងតែយកចិត្តទុកដាក់បំផុតចំពោះបញ្ញាសិប្បនិម្មិត។ ពាក់កណ្តាលនៃមនុស្សដែលធ្វើការឱ្យពួកយើងបានចូលរួមក្នុង AI ឬអន្តរកម្មរវាងមនុស្សនិងកុំព្យូទ័រ - ការចែករំលែកនេះគឺខ្ពស់ជាងនៅក្នុងនាយកដ្ឋានផ្សេងទៀត ហើយតែងតែមានដូច្នេះ។ ប៉ុន្តែពេលខ្ញុំរៀននៅសកលវិទ្យាល័យ ខ្ញុំមិនមានមុខវិជ្ជា AI ទេ ហើយខ្ញុំក៏មិនដែលធ្វើការក្នុងវិស័យនេះដែរ។ ដូច្នេះនាយកដ្ឋានរបស់ខ្ញុំមានជំនាញលើបញ្ហាដែលខ្ញុំមិនពាក់ព័ន្ធនឹងបញ្ហានោះទេ។ ការលួងលោមគឺថាបញ្ហាសំខាន់បំផុតទីពីរសម្រាប់នាយកដ្ឋានរបស់យើងគឺកម្មវិធីប៉ារ៉ាឡែលនិងពហុខ្សែ នោះគឺជាជំនាញរបស់ខ្ញុំ។
វីតាលី៖ អ្នកបានចាប់ផ្តើមធ្វើការផ្នែកវិទ្យាសាស្ត្រកុំព្យូទ័រ នៅពេលដែលវិស័យកម្មវិធីពហុខ្សែទើបតែលេចចេញមក។ បញ្ជីនៃការបោះពុម្ភផ្សាយរបស់អ្នកបង្ហាញថាការងារដំបូងរបស់អ្នកបានដោះស្រាយបញ្ហាយ៉ាងទូលំទូលាយ៖ ការគ្រប់គ្រងអង្គចងចាំនៅក្នុងប្រព័ន្ធពហុខ្សែ ប្រព័ន្ធឯកសារចែកចាយ ប្រព័ន្ធប្រតិបត្តិការ។ ហេតុអ្វីបានជាភាពប៉ិនប្រសប់បែបនេះ? តើអ្នកបានព្យាយាមស្វែងរកកន្លែងរបស់អ្នកនៅក្នុងសហគមន៍ស្រាវជ្រាវដែរឬទេ?
ម៉ៃឃើល៖ ក្នុងនាមខ្ញុំជាសិស្ស ខ្ញុំបានចូលរួម នៅសាកលវិទ្យាល័យ Wisconsin ជាកន្លែងដែលប្រព័ន្ធប្រតិបត្តិការចែកចាយដំបូងមួយត្រូវបានបង្កើតឡើង។ នៅទីនោះខ្ញុំបានធ្វើការរួមគ្នាជាមួយ Rafael Finkel () និង Marvin Solomon () និក្ខេបបទរបស់ខ្ញុំត្រូវបានឧទ្ទិសដល់ការអភិវឌ្ឍន៍ភាសាសម្រាប់កម្មវិធីប្រព័ន្ធសម្រាប់ប្រព័ន្ធចែកចាយ - ឥឡូវនេះមនុស្សគ្រប់គ្នាបានភ្លេចអំពីវា ហើយអរគុណព្រះ។ ខ្ញុំបានបង្កើតភាសាសរសេរកម្មវិធី Lynx ដែលមានបំណងធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការបង្កើតម៉ាស៊ីនមេសម្រាប់ប្រព័ន្ធប្រតិបត្តិការដែលបានចែកចាយដែលរួមបញ្ចូលគ្នា។ ចាប់តាំងពីពេលនោះមកខ្ញុំបានចូលរួមជាចម្បងនៅក្នុងប្រព័ន្ធប្រតិបត្តិការ ខ្ញុំបានសន្មត់ថាអាជីពរបស់ខ្ញុំនឹងត្រូវបានភ្ជាប់ជាចម្បងជាមួយពួកគេ។ ប៉ុន្តែ Rochester គឺជាសាកលវិទ្យាល័យតូចមួយ ហើយដោយសារតែរឿងនេះ ក្រុមផ្សេងគ្នានៅទីនោះមានទំនាក់ទំនងយ៉ាងជិតស្និទ្ធជាមួយគ្នាទៅវិញទៅមក។ មិនមានមនុស្សរាប់សិបប្រព័ន្ធប្រតិបត្តិការផ្សេងទៀតនៅទីនោះសម្រាប់ខ្ញុំដើម្បីនិយាយជាមួយ ដូច្នេះទំនាក់ទំនងរបស់ខ្ញុំទាំងអស់គឺជាមួយមនុស្សដែលធ្វើការនៅក្នុងតំបន់ផ្សេងគ្នាទាំងស្រុង។ ខ្ញុំពិតជារីករាយណាស់ ការធ្វើជាអ្នកគ្រប់ជ្រុងជ្រោយគឺជាអត្ថប្រយោជន៍ដ៏ធំមួយសម្រាប់ខ្ញុំ។ ប្រសិនបើយើងនិយាយជាពិសេសអំពីរចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែ និងក្បួនដោះស្រាយការធ្វើសមកាលកម្ម នោះខ្ញុំបានចាប់ផ្តើមធ្វើការលើពួកវាទាំងស្រុងដោយចៃដន្យ។
IEEE Scalable Coherent Interface, MCS ចាក់សោ។
វីតាលី៖ តើអ្នកអាចប្រាប់ខ្ញុំបន្ថែមអំពីរឿងនេះបានទេ?
ម៉ៃឃើល៖ នេះជារឿងគួរឱ្យអស់សំណើចដែលខ្ញុំមិនដែលធុញទ្រាន់នឹងការប្រាប់អ្នកទាំងអស់គ្នា។ វាបានកើតឡើងនៅក្នុងសន្និសីទមួយ។ នៅបូស្តុន - នេះគឺនៅចុងទសវត្សរ៍ទី 80 ឬដើមទសវត្សរ៍ទី 90 ។ John Mellor-Crummey (), និស្សិតបញ្ចប់ការសិក្សានៅមហាវិទ្យាល័យរបស់យើង។ ខ្ញុំស្គាល់គាត់ ប៉ុន្តែយើងមិនបានធ្វើការស្រាវជ្រាវរួមគ្នាពីមុនមកទេ។ Mary Vernon () មកពី Wisconsin បានផ្តល់ការពិភាក្សាអំពីប្រព័ន្ធ multiprocessor ដែលពួកគេកំពុងអភិវឌ្ឍនៅក្នុង Wisconsin: . Multicube នេះមានយន្តការធ្វើសមកាលកម្មនៅកម្រិត Hardware ដែលហៅថា Q on Sync Bit ហើយក្រោយមកវាត្រូវបានប្តូរឈ្មោះ Q on Lock Bit ព្រោះវាស្តាប់ទៅដូចជា Colby cheese ដែលជាពាក្យបញ្ឆោត។ ប្រសិនបើអ្នកចាប់អារម្មណ៍លើយន្តការ multithreading អ្នកប្រហែលជាដឹងថានៅទីបំផុត Colby បានក្លាយជាម៉ាស៊ីនធ្វើសមកាលកម្មសម្រាប់ស្តង់ដារ IEEE Scalable Coherent Interface ។ នេះគឺជាយន្តការចាក់សោដែលបង្កើតទ្រនិចពីឃ្លាំងសម្ងាត់មួយទៅឃ្លាំងសម្ងាត់មួយទៀតនៅកម្រិតផ្នែករឹង ដូច្នេះអ្នកកាន់សោនីមួយៗដឹងថាវាជាវេនរបស់នរណា។ នៅពេលដែល John និងខ្ញុំបានដឹងរឿងនេះ ពួកយើងមើលមុខគ្នា ហើយនិយាយថា៖ ហេតុអ្វីធ្វើបែបនេះនៅកម្រិត Hardware? មិនអាចសម្រេចបានដូចគ្នាដោយប្រើការប្រៀបធៀបនិងស្វបឬ? យើងយកសៀវភៅមួយក្បាលដែលដេកក្នុងថ្នាក់រៀន ហើយសរសេរអក្សរលើវា។ ខណៈពេលដែលម៉ារីបន្តរបាយការណ៍របស់នាង។ ក្រោយមក យើងបានអនុវត្តវា ពិសោធន៍ គំនិតនេះបានក្លាយទៅជាជោគជ័យ ហើយយើងបានបោះពុម្ពអត្ថបទ។ នៅពេលនោះ សម្រាប់ខ្ញុំ ប្រធានបទនេះហាក់បីដូចជាគ្រាន់តែជាការរំខានដ៏រីករាយមួយ បន្ទាប់ពីនោះខ្ញុំគ្រោងនឹងត្រលប់ទៅប្រព័ន្ធប្រតិបត្តិការវិញ។ ប៉ុន្តែបន្ទាប់មកបញ្ហាមួយទៀតនៅតាមបណ្តោយបន្ទាត់ដូចគ្នាបានកើតមានឡើង ហើយទីបំផុតការធ្វើសមកាលកម្ម ការបញ្ចូលខ្សែច្រើន និងរចនាសម្ព័ន្ធទិន្នន័យបានក្លាយជាជំនាញពិសេសរបស់ខ្ញុំ។ ដូចដែលអ្នកអាចឃើញទាំងអស់នេះបានកើតឡើងដោយចៃដន្យ។
វីតាលី៖ ខ្ញុំធ្លាប់ស្គាល់ MCS blocking យូរហើយ ប៉ុន្តែរហូតមកដល់ពេលនេះ ខ្ញុំមិនដឹងថាវាជាការងាររបស់អ្នកទេ ហើយក៏មិនយល់ថាវាជាអក្សរកាត់សម្រាប់នាមត្រកូលរបស់អ្នកដែរ។
តើធ្វើដូចម្តេចដើម្បីរស់ក្នុងពិភពលោកដែលផ្លាស់ប្តូរជានិច្ច?
Алексей៖ ខ្ញុំមានសំណួរមួយលើប្រធានបទដែលពាក់ព័ន្ធ។ កាលពី 30 ឬ 40 ឆ្នាំមុន មានសេរីភាពកាន់តែច្រើនក្នុងជំនាញផ្សេងៗគ្នា។ ប្រសិនបើអ្នកចង់ចាប់ផ្តើមអាជីពនៅក្នុងប្រព័ន្ធ multithreading ឬចែកចាយ, អ្នកត្រូវបានស្វាគមន៍, ប្រសិនបើអ្នកចង់ចូលទៅក្នុងប្រព័ន្ធប្រតិបត្តិការ, គ្មានបញ្ហា។ នៅក្នុងតំបន់នីមួយៗមានសំណួរបើកចំហជាច្រើន និងមានអ្នកជំនាញតិចតួច។ ឯកទេសតូចចង្អៀតឥឡូវនេះបានលេចចេញជារូបរាង៖ ជាទូទៅមិនមានអ្នកជំនាញលើប្រព័ន្ធប្រតិបត្តិការទេ ជាទូទៅមានអ្នកឯកទេសលើប្រព័ន្ធបុគ្គល។ វាដូចគ្នាជាមួយនឹងប្រព័ន្ធ multithreading និងចែកចាយ។ ប៉ុន្តែបញ្ហានោះគឺថា ជីវិតរបស់យើងមិនមិនចេះចប់ទេ មនុស្សគ្រប់រូបអាចចំណាយពេលត្រឹមតែពីរបីទសវត្សរ៍ប៉ុណ្ណោះដើម្បីស្រាវជ្រាវ។ តើធ្វើដូចម្តេចដើម្បីរស់ក្នុងពិភពលោកថ្មីនេះ?
ម៉ៃឃើល៖ យើងមិនពិសេសក្នុងរឿងនេះទេ រឿងដដែលនេះបានកើតឡើងម្តងនៅក្នុងតំបន់ផ្សេងទៀត។ ខ្ញុំមានសំណាងដែលខ្ញុំចាប់ផ្តើមធ្វើការផ្នែកវិទ្យាសាស្ត្រកុំព្យូទ័រនៅពេលដែលវិស័យនេះស្ថិតក្នុង "វ័យជំទង់" ។ មូលដ្ឋានគ្រឹះខ្លះត្រូវបានដាក់រួចហើយ ប៉ុន្តែអ្វីៗនៅតែមិនទាន់ដំណើរការនៅឡើយ។ ឱកាសនេះមិនមកញឹកញាប់ទេ។ វិស្វកម្មអគ្គិសនីមានយូរណាស់មកហើយ រូបវិទ្យាក៏យូរជាងនេះ គណិតវិទ្យាស្ទើរតែតាំងពីដើមមក។ ប៉ុន្តែនេះមិនមានន័យថាគ្មាននរណាម្នាក់បង្កើតការរកឃើញគួរឱ្យចាប់អារម្មណ៍នៅក្នុងគណិតវិទ្យាទៀតទេ។ នៅតែមានបញ្ហាបើកចំហជាច្រើន ប៉ុន្តែក្នុងពេលជាមួយគ្នានេះ ចាំបាច់ត្រូវសិក្សាបន្ថែមទៀត។ អ្នកពិតជាត្រូវកត់សម្គាល់ថាឥឡូវនេះមានជំនាញពិសេសជាច្រើនទៀតជាងកាលពីមុន ប៉ុន្តែនេះគ្រាន់តែមានន័យថាយើងឃើញខ្លួនយើងនៅក្នុងស្ថានភាពដូចគ្នាទៅនឹងផ្នែកផ្សេងទៀតភាគច្រើននៃសកម្មភាពរបស់មនុស្ស។
Алексей៖ ខ្ញុំចាប់អារម្មណ៍លើទិដ្ឋភាពជាក់ស្តែងនៃបញ្ហានៅទីនេះ។ ខ្ញុំមានប្រវត្តិគណិតវិទ្យា ហើយក្នុងអំឡុងពេលសិក្សារបស់ខ្ញុំ ខ្ញុំបានចូលរួមសន្និសីទ និងធ្វើការលើប្រធានបទវិទ្យាសាស្ត្រផ្សេងៗ។ ខ្ញុំបានរកឃើញថាគ្មាននរណាម្នាក់នៅក្នុងទស្សនិកជនយល់ពីរបាយការណ៍របស់ខ្ញុំទេ ហើយតាមរបៀបដូចគ្នា របាយការណ៍របស់មនុស្សផ្សេងទៀតអាចយល់បានតែចំពោះខ្លួនគេប៉ុណ្ណោះ។ នេះមិនមែនជាករណីនៅក្នុងប្រធានបទកម្រិតខ្ពស់នោះទេ ប៉ុន្តែនៅពេលដែលអ្នកចាប់ផ្តើមស្វែងយល់អំពីអ្វីមួយ ទស្សនិកជនមិនអាចតាមទាន់អ្នកបានទៀតទេ។ តើអ្នកដោះស្រាយដោយរបៀបណា?
ម៉ៃឃើល៖ មិនតែងតែជោគជ័យទេ។ ថ្មីៗនេះ ខ្ញុំបានរៀបចំរបាយការណ៍មួយដែលខ្ញុំចូលជ្រៅពេកក្នុងព័ត៌មានលម្អិតបច្ចេកទេស។ នៅពេលដែលការពិភាក្សាបានដំណើរការ វាកាន់តែច្បាស់ថាទស្សនិកជនភាគច្រើនមិនយល់ពីខ្ញុំ ដូច្នេះខ្ញុំត្រូវតែសម្របខ្លួនទៅនឹងស្ថានភាពភ្លាមៗ។ ស្លាយមិនអាចត្រូវបានផ្លាស់ប្តូរទេ ដូច្នេះវាមិនបានប្រែប្រួលខ្លាំងទេ - ដូច្នេះ ជាទូទៅ ខ្ញុំព្យាយាមមិនប្រើស្លាយ។ សរុបមក ដំបូន្មានរបស់ខ្ញុំគឺពិចារណាទស្សនិកជនរបស់អ្នក។ អ្នកត្រូវដឹងថាអ្នកកំពុងនិយាយជាមួយនរណាកម្រិតណានៃចំណេះដឹងរបស់ពួកគេ និងអ្វីដែលពួកគេត្រូវស្តាប់ដើម្បីឱ្យតម្លៃការងាររបស់អ្នក។
វីតាលី៖ តើលោកអាចប្រាប់យើងអំពីអ្វីដែលជាការបង្រៀននេះបានទេ?
ម៉ៃឃើល៖ និយាយឱ្យត្រង់ទៅ ខ្ញុំមិនចង់ពង្រីកលើប្រធានបទនេះ ដើម្បីទុកអោយមនុស្សដែលមានចម្ងល់ជាអនាមិក។ ចំណុចនោះគឺថា ជាញឹកញាប់យើងយល់ជ្រៅពេកទៅក្នុងភាពស្មុគ្រស្មាញនៃបញ្ហាដែលយើងកំពុងធ្វើការ ដូច្នេះវាពិបាកសម្រាប់យើងក្នុងការពន្យល់នៅដើមដំបូងនៃសុន្ទរកថាថាហេតុអ្វីបានជាបញ្ហាគួរឱ្យចាប់អារម្មណ៍ និងសំខាន់ និងរបៀបដែលវាទាក់ទងនឹងបញ្ហាដែល ទស្សនិកជនបានដឹងរួចហើយ។ តាមការសង្កេតរបស់ខ្ញុំ សិស្សមានពេលវេលាលំបាកបំផុតក្នុងការរៀនជំនាញនេះ។ ហើយនេះក៏ជាចំណុចខ្សោយនៃរបាយការណ៍ថ្មីៗរបស់ខ្ញុំផងដែរ។ របាយការណ៍ដែលមានរចនាសម្ព័ន្ធត្រឹមត្រូវគួរតែស្វែងរកទំនាក់ទំនងជាមួយទស្សនិកជន តាំងពីដំបូងមក ពន្យល់ពួកគេអំពីបញ្ហាពិតប្រាកដ និងរបៀបដែលវាទាក់ទងនឹងប្រធានបទដែលគេស្គាល់រួចហើយ។ តើការណែនាំនេះមានលក្ខណៈបច្ចេកទេសយ៉ាងណា អាស្រ័យលើទស្សនិកជន។ ប្រសិនបើវាមានលក្ខណៈស្រពិចស្រពិល នោះរបាយការណ៍អាចជាពហុដំណាក់កាល។ ការណែនាំគួរតែអាចចូលប្រើបានសម្រាប់មនុស្សគ្រប់គ្នា ហើយនៅទីបញ្ចប់ បំណែកនេះប្រហែលជាមិនអាចតាមទាន់អ្នកបានទេ ប៉ុន្តែមនុស្សដែលស្គាល់ពីវិស័យរបស់អ្នកនឹងអាចយល់បាន។
តើសិស្សក្លាយជាមនុស្សល្ងង់មែនទេ? និន្នាការសកលភាវូបនីយកម្ម។
Алексей៖ អ្នកបានសង្កេតមើលសិស្សជាច្រើនទសវត្សរ៍មកហើយ។ តើសិស្សមានភាពល្ងង់ខ្លៅ ឬឆ្លាតជាងពីមួយទសវត្សរ៍ទៅមួយទសវត្សរ៍ ឬពីមួយឆ្នាំទៅមួយឆ្នាំ? នៅប្រទេសរុស្ស៊ី សាស្រ្តាចារ្យតែងតែត្អូញត្អែរថា សិស្សានុសិស្សមានការងឿងឆ្ងល់ជារៀងរាល់ឆ្នាំ ហើយវាពិតជាមិនច្បាស់ថាត្រូវធ្វើយ៉ាងណាចំពោះវា។
ម៉ៃឃើល៖ អ្នកពិតជាអាចឮពាក្យអវិជ្ជមានជាច្រើនពីមនុស្សចាស់យើង។ ដោយមិនដឹងខ្លួន យើងមានទំនោរក្នុងការរំពឹងថា សិស្សនឹងស្រូបយកបទពិសោធន៍ 30 ឆ្នាំទាំងអស់ដែលយើងមានរួចហើយ។ បើខ្ញុំយល់កាន់តែស៊ីជម្រៅជាងឆ្នាំ១៩៨៥ ហេតុអ្វីសិស្សអត់មាន? ប្រហែលជាពួកគេមានអាយុ២០ឆ្នាំតើអ្នកគិតយ៉ាងណា? ខ្ញុំគិតថាការផ្លាស់ប្តូរដ៏សំខាន់បំផុតក្នុងប៉ុន្មានទសវត្សរ៍ថ្មីៗនេះគឺនៅក្នុងសមាសភាពប្រជាសាស្រ្ត៖ ឥឡូវនេះយើងមាននិស្សិតអន្តរជាតិកាន់តែច្រើន លើកលែងតែជនជាតិកាណាដា។ ធ្លាប់មានជនជាតិកាណាដាច្រើនណាស់ ដោយសារយើងនៅជិតព្រំដែនប្រទេសកាណាដា ហើយសិស្សពីទីនោះអាចធ្វើដំណើរទៅផ្ទះនៅថ្ងៃចុងសប្តាហ៍។ ប៉ុន្តែឥឡូវនេះមានសាកលវិទ្យាល័យល្អ ៗ ជាច្រើននៅក្នុងប្រទេសកាណាដា ហើយប្រជាជនកាណាដាចូលចិត្តសិក្សានៅទីនេះ ពួកគេមានចំនួនតិចណាស់ដែលមកសហរដ្ឋអាមេរិក។
Алексей៖ តើអ្នកគិតថានេះជានិន្នាការក្នុងស្រុក ឬជាសកល?
ម៉ៃឃើល៖ ខ្ញុំមិនចាំច្បាស់ថាអ្នកណាទេ ប៉ុន្តែមានគេនិយាយថាពិភពលោកគឺសំប៉ែត។ វិស័យរបស់យើងបានក្លាយជាអន្តរជាតិកាន់តែច្រើន។ កាលពីមុន ពួកគេត្រូវបានប្រារព្ធឡើងផ្តាច់មុខនៅក្នុងសហរដ្ឋអាមេរិក បន្ទាប់មកពួកគេបានសម្រេចចិត្តប្រារព្ធវាម្តងរៀងរាល់ 4 ឆ្នាំម្តងនៅក្នុងប្រទេសផ្សេងទៀត ហើយឥឡូវនេះពួកគេត្រូវបានប្រារព្ធឡើងទូទាំងពិភពលោក។ ការផ្លាស់ប្តូរទាំងនេះប៉ះពាល់កាន់តែខ្លាំង ដូចដែលវាតែងតែជាអង្គការអន្តរជាតិច្រើនជាង ACM ។ ហើយមានប្រធានកម្មវិធីមកពីប្រទេសចិន ឥណ្ឌា រុស្សី អាល្លឺម៉ង់ និងប្រទេសជាច្រើនទៀត ព្រោះឥឡូវនេះមានច្រើននៅគ្រប់ទីកន្លែង។
Алексей៖ ប៉ុន្តែ ប្រហែលជាមានចំណុចអវិជ្ជមានមួយចំនួននៃអន្តរភាវូបនីយកម្មបែបនេះ?
ម៉ៃឃើល៖ ខ្ញុំចង់និយាយថា ទិដ្ឋភាពអវិជ្ជមានទាំងអស់មិនទាក់ទងទៅនឹងបច្ចេកវិទ្យាទេ ប៉ុន្តែចំពោះនយោបាយ។ មានពេលមួយ បញ្ហាចម្បងគឺការដែលសហរដ្ឋអាមេរិកកំពុងលួចយកមនុស្សឆ្លាតបំផុត និងមានទេពកោសល្យបំផុតពីប្រទេសជុំវិញពិភពលោក។ ហើយឥឡូវនេះបញ្ហាចម្បងគឺល្បែងនយោបាយរវាងប្រទេសផ្សេងៗគ្នាជុំវិញទិដ្ឋាការ និងអន្តោប្រវេសន៍។
Алексей៖ នោះគឺជាឧបសគ្គនិងរឿងដូចនោះ។ វាច្បាស់ណាស់។
Владимир៖ ដោយផ្ទាល់ ខ្ញុំចាប់អារម្មណ៍លើវិធីសាស្រ្តដែលអ្នកអនុវត្តនៅពេលបង្រៀនមុខវិជ្ជាថ្មីដល់សិស្ស។ មានជម្រើសផ្សេងៗគ្នា៖ អ្នកអាចសាកល្បងជាដំបូងដើម្បីជំរុញពួកគេឱ្យសាកល្បងអ្វីដែលថ្មី ឬអ្នកអាចយកចិត្តទុកដាក់បន្ថែមទៀតចំពោះព័ត៌មានលម្អិតអំពីរបៀបដែលបច្ចេកវិទ្យាជាក់លាក់មួយដំណើរការ។ តើអ្នកចូលចិត្តអ្វី?
ការងារប្រកបដោយប្រសិទ្ធភាពជាមួយសិស្ស
Алексей៖ ហើយតើធ្វើដូចម្តេចដើម្បីរកតុល្យភាពដ៏អាក្រក់រវាងទីមួយ និងទីពីរ?
ម៉ៃឃើល៖ បញ្ហាគឺថា ថ្នាក់រៀនមិនតែងតែទៅតាមរបៀបដែលខ្ញុំចង់បាន។ ជាធម្មតាខ្ញុំផ្តល់ឱ្យសិស្សនូវសម្ភារៈអានជាមុនដើម្បីឱ្យពួកគេស្វែងយល់ពីវា យល់វាឱ្យអស់ពីសមត្ថភាពរបស់ពួកគេ និងបង្កើតសំណួរអំពីផ្នែកទាំងនោះដែលពួកគេមិនអាចយល់បាន។ បន្ទាប់មកនៅក្នុងថ្នាក់ អ្នកអាចផ្តោតលើគ្រាលំបាកបំផុត ហើយស្វែងយល់ពីវាជាមួយគ្នា។ នេះជារបៀបដែលខ្ញុំចូលចិត្តបង្រៀនថ្នាក់ច្រើនបំផុត។ ប៉ុន្តែដោយសារបន្ទុកដែលឥឡូវនេះស្ថិតនៅលើសិស្ស ខ្ញុំមិនតែងតែអាចប្រាកដថាពួកគេរៀបចំទុកជាមុននោះទេ។ ជាលទ្ធផល អ្នកត្រូវលះបង់ពេលវេលាច្រើន សម្រាប់ការនិយាយឡើងវិញនូវសម្ភារៈទូទៅ ជាងអ្វីដែលអ្នកចង់បាន។ ទោះបីជាយ៉ាងនេះក្ដី ខ្ញុំព្យាយាមរក្សាថ្នាក់របស់យើងឲ្យមានអន្តរកម្ម។ បើមិនដូច្នោះទេ វាកាន់តែងាយស្រួលក្នុងការថតវីដេអូ នៅពេលដែលសិស្សអាចមើលនៅផ្ទះបាន។ ចំណុចនៃថ្នាក់បន្តផ្ទាល់គឺអន្តរកម្មរបស់មនុស្ស។ នៅក្នុងថ្នាក់ ខ្ញុំចូលចិត្តប្រើដីស និងក្តារខៀន ជាជាងស្លាយ លើកលែងតែករណីខ្លះ នៅពេលដែលដ្យាក្រាមស្មុគស្មាញពេកក្នុងការពណ៌នានៅលើក្តារ។ អរគុណចំពោះការនេះ ខ្ញុំមិនចាំបាច់ប្រកាន់ខ្ជាប់នូវផែនការមេរៀនតឹងរ៉ឹងនោះទេ។ ដោយសារមិនមានលំដាប់តឹងរ៉ឹងដែលខ្ញុំផ្តល់សម្ភារៈនោះ វាអនុញ្ញាតឱ្យខ្ញុំកែសម្រួលវាទៅទស្សនិកជន អាស្រ័យលើសំណួរដែលខ្ញុំទទួលបាន។ ជាទូទៅ ខ្ញុំព្យាយាមធ្វើឱ្យថ្នាក់មានអន្តរកម្មតាមដែលអាចធ្វើទៅបាន ដូច្នេះសម្ភារៈដែលខ្ញុំបង្ហាញគឺអាស្រ័យលើសំណួរដែលត្រូវបានសួរមកខ្ញុំ។
Владимир: វាពិតជាអស្ចារ្យណាស់។ តាមបទពិសោធន៍របស់ខ្ញុំ វាពិតជាលំបាកណាស់ក្នុងការធ្វើឱ្យអ្នកស្តាប់សួរសំណួរ។ ទោះសួរមុនសួរមិនថាល្ងង់ឬឆ្លាតប៉ុណ្ណាក៏គេនៅស្ងៀម។ តើអ្នកដោះស្រាយដោយរបៀបណា?
ម៉ៃឃើល៖ អ្នកនឹងសើច ប៉ុន្តែប្រសិនបើអ្នកឈរស្ងៀមយូរមិនយូរមិនឆាប់ អ្នករាល់គ្នានឹងមិនស្រួល ហើយមាននរណាម្នាក់សួរសំណួរ។ ឬអ្នកអាចសួរសំណួរបច្ចេកទេសសាមញ្ញជាមួយនឹងចម្លើយបាទ ឬទេ ដើម្បីកំណត់ថាតើមនុស្សយល់ពីអ្វីដែលទើបតែបាននិយាយ។ ឧទាហរណ៍ តើមានការប្រណាំងទិន្នន័យក្នុងឧទាហរណ៍ខាងលើទេ? តើអ្នកណាគិតដូច្នេះ? អ្នកណាគិតអត់? អ្នកណាមិនយល់អ្វីទាំងអស់ ព្រោះសរុបទៅមានតែពាក់កណ្តាលដៃប៉ុណ្ណោះ?
វីតាលី: ហើយប្រសិនបើអ្នកឆ្លើយខុស អ្នកនឹងត្រូវបណ្តេញចេញពីថ្នាក់ :)
ម៉ៃឃើល៖ ប្រសិនបើអ្នកមិនទាន់បានឆ្លើយអ្វីទេ អ្នកគួរតែសួរសំណួរមួយ។ ខ្ញុំត្រូវយល់ពីអ្វីដែលសិស្សត្រូវដឹង ដើម្បីឆ្លើយសំណួរដែលខ្ញុំទើបតែសួរ។ ខ្ញុំត្រូវការពួកគេឱ្យជួយខ្ញុំជួយពួកគេ។ ខ្ញុំត្រៀមខ្លួនជាស្រេចដើម្បីសម្របខ្លួនពួកគេដើម្បីឱ្យពួកគេយល់ពីបញ្ហា។ តែបើខ្ញុំមិនដឹងថាមានរឿងអ្វីនៅក្នុងក្បាលគេទេ ខ្ញុំមិនអាចធ្វើវាបានទេ។ ហើយប្រសិនបើអ្នកមិនផ្តល់សន្តិភាពដល់សិស្សក្នុងរយៈពេលយូរគ្រប់គ្រាន់ ជួនកាលនៅទីបញ្ចប់ពួកគេសួរសំណួរដែលត្រឹមត្រូវ នោះគឺជាសំណួរដែលអនុញ្ញាតឱ្យខ្ញុំមើលឃើញនូវអ្វីដែលកំពុងកើតឡើងក្នុងក្បាលសិស្ស។
Алексей៖ តើពេលខ្លះសំណួរទាំងនេះនាំទៅរកគំនិតដែលអ្នកខ្លួនឯងមិនបានគិតពីមុនមកទេ? តើពួកគេនឹកស្មានមិនដល់មែនទេ? តើពួកគេអនុញ្ញាតឱ្យអ្នកមើលបញ្ហានៅក្នុងពន្លឺថ្មីទេ?
ម៉ៃឃើល៖ មានសំណួរដែលបើករបៀបថ្មីនៃការបង្ហាញសម្ភារៈ។ ជារឿយៗមានសំណួរដែលនាំទៅដល់បញ្ហាគួរឱ្យចាប់អារម្មណ៍ ដែលខ្ញុំមិនមានគម្រោងនិយាយ។ សិស្សតែងតែប្រាប់ខ្ញុំថា ខ្ញុំមានទំនោរចង់បិទប្រធានបទនៅពេលរឿងនេះកើតឡើង។ ហើយយោងទៅតាមពួកគេជាញឹកញាប់នេះគឺជាផ្នែកគួរឱ្យចាប់អារម្មណ៍បំផុតនៃមេរៀន។ កម្រមានណាស់ សិស្សបានសួរសំណួរដែលជំរុញឱ្យមានទិសដៅថ្មីក្នុងការស្រាវជ្រាវ ហើយរីកចម្រើនទៅជាអត្ថបទមួយ។ រឿងនេះកើតឡើងញឹកញាប់ជាងនៅក្នុងការសន្ទនាជាមួយសិស្សជាជាងអំឡុងពេលថ្នាក់ ប៉ុន្តែម្តងម្កាលវាបានកើតឡើងក្នុងអំឡុងពេលថ្នាក់។
Алексей៖ ដូច្នេះ សិស្សបានសួរអ្នកនូវសំណួរដោយផ្អែកលើមូលដ្ឋានដែលវាអាចបោះពុម្ពអត្ថបទមួយ?
ម៉ៃឃើល៖ បាទ។
វីតាលី៖ តើអ្នកមានការសន្ទនាទាំងនេះញឹកញាប់ប៉ុណ្ណាជាមួយសិស្ស? តើពេលណាពួកគេចង់រៀនច្រើនជាងអ្វីដែលបានគ្របដណ្តប់ក្នុងមេរៀន?
ម៉ៃឃើល៖ ជាមួយនិស្សិតបញ្ចប់ការសិក្សារបស់ខ្ញុំ - គ្រប់ពេលវេលា។ ខ្ញុំមានប្រហែល 5 ឬ 6 ក្នុងចំណោមពួកគេ ហើយយើងពិភាក្សាអ្វីមួយជាមួយពួកគេគ្រប់ពេល។ ហើយការសន្ទនាបែបនេះជាមួយសិស្សដែលគ្រាន់តែចូលរៀនថ្នាក់របស់ខ្ញុំគឺមិនធម្មតាទេ។ ទោះបីជាខ្ញុំចង់ឱ្យរឿងនេះកើតឡើងញឹកញាប់ជាង។ ខ្ញុំសង្ស័យថាពួកគេខ្លាចមកមហាវិទ្យាល័យក្នុងម៉ោងធ្វើការ។ ជារៀងរាល់ឆមាស សិស្សខ្លះអាចយកឈ្នះលើឧបសគ្គផ្លូវចិត្តនេះ ហើយវាតែងតែគួរឱ្យចាប់អារម្មណ៍ខ្លាំងណាស់ក្នុងការនិយាយជាមួយពួកគេបន្ទាប់ពីថ្នាក់រៀន។ ពិតមែនហើយ ប្រសិនបើសិស្សទាំងអស់មានភាពក្លាហាន នោះខ្ញុំគ្រាន់តែមិនមានពេលគ្រប់គ្រាន់នោះទេ។ ដូច្នេះប្រហែលជាអ្វីៗដំណើរការដូចដែលវាគួរតែ។
វីតាលី៖ តើអ្នកអាចរកពេលវេលាទំនាក់ទំនងជាមួយសិស្សដោយរបៀបណា? តាមដែលខ្ញុំដឹង គ្រូបង្រៀននៅសហរដ្ឋអាមេរិកមានការងារច្រើន - ការដាក់ពាក្យសុំជំនួយ និងផ្សេងៗទៀត។
ម៉ៃឃើល៖ និយាយដោយស្មោះត្រង់ ការធ្វើការជាមួយសិស្សគឺជាទិដ្ឋភាពនៃការងាររបស់ខ្ញុំដែលខ្ញុំចូលចិត្តបំផុត។ ដូច្នេះខ្ញុំមានកម្លាំងចិត្តគ្រប់គ្រាន់សម្រាប់រឿងនេះ។ ភាគច្រើននៃពេលវេលាដែលខ្ញុំចំណាយនៅក្នុងការិយាល័យរបស់ខ្ញុំគឺត្រូវចំណាយលើការប្រជុំគ្រប់ប្រភេទ។ ឥឡូវនេះជារដូវក្តៅ ដូច្នេះកាលវិភាគរបស់ខ្ញុំមិនសូវរវល់ទេ ប៉ុន្តែក្នុងកំឡុងឆ្នាំសិក្សា ជារៀងរាល់ថ្ងៃចាប់ពីម៉ោង 9 ដល់ 17 ខ្ញុំមានអ្វីៗគ្រប់យ៉ាង។ ការងារស្រាវជ្រាវ ការពិនិត្យឡើងវិញ ការផ្តល់ជំនួយ - សម្រាប់ទាំងអស់នេះមានតែពេលល្ងាច និងចុងសប្តាហ៍ប៉ុណ្ណោះ។
តើធ្វើដូចម្តេចដើម្បីបន្តជាមួយនឹងការរៀបចំវគ្គសិក្សាថ្មីនិងសៀវភៅ។
Алексей៖ តើអ្នកកំពុងបន្តបង្រៀនមុខវិជ្ជាណាដែលអ្នកបានបង្រៀនយូរមកហើយឬនៅ? អ្វីមួយដូចជាការណែនាំអំពីវិទ្យាសាស្ត្រកុំព្យូទ័រ។
ម៉ៃឃើល៖ រឿងដំបូងដែលនឹកឃើញនៅទីនេះគឺវគ្គសិក្សាភាសាសរសេរកម្មវិធី។
Алексей៖ តើជំនាន់នៃវគ្គសិក្សានេះខុសគ្នាយ៉ាងណាខ្លះពីកាលពី ១០, ២០, ៣០ ឆ្នាំមុន? ប្រហែលជាអ្វីដែលគួរឱ្យចាប់អារម្មណ៍ជាងនេះមិនមែនជាព័ត៌មានលម្អិតនៃវគ្គសិក្សាជាក់លាក់មួយនោះទេ ប៉ុន្តែជានិន្នាការទូទៅ។
ម៉ៃឃើល៖ វគ្គសិក្សារបស់ខ្ញុំលើភាសាសរសេរកម្មវិធីគឺមិនធម្មតានៅពេលដែលខ្ញុំបង្កើតវា។ ខ្ញុំចាប់ផ្ដើមអានវានៅចុងទសវត្សរ៍ឆ្នាំ 1980 ដោយជំនួសមិត្តរួមការងាររបស់ខ្ញុំ Doug Baldwin () ប្រធានបទនៃវគ្គសិក្សាគឺទាក់ទងតែ tangential ទៅនឹងជំនាញរបស់ខ្ញុំ, ប៉ុន្តែនៅពេលដែលគាត់បានចាកចេញ, ខ្ញុំជាបេក្ខជនល្អបំផុតក្នុងការបង្រៀនវគ្គសិក្សានេះ។ ខ្ញុំមិនចូលចិត្តសៀវភៅសិក្សាណាដែលមាននៅពេលនោះទេ ដូច្នេះខ្ញុំបានបញ្ចប់ការសរសេរសៀវភៅសម្រាប់វគ្គសិក្សានេះដោយខ្លួនឯង។ (កំណត់សម្គាល់របស់អ្នកនិពន្ធ៖ យើងកំពុងនិយាយអំពីសៀវភៅ) ឥឡូវនេះវាត្រូវបានគេប្រើនៅក្នុងសាកលវិទ្យាល័យជាង 200 ជុំវិញពិភពលោក។ វិធីសាស្រ្តរបស់ខ្ញុំគឺមិនធម្មតាទេ ដែលវាមានចេតនាលាយឡំបញ្ហានៃការរចនា និងការអនុវត្តភាសា ហើយយកចិត្តទុកដាក់យ៉ាងខ្លាំងចំពោះអន្តរកម្មរវាងទិដ្ឋភាពទាំងនេះនៅក្នុងគ្រប់វិស័យដែលអាចធ្វើទៅបាន។ វិធីសាស្រ្តជាមូលដ្ឋាននៅតែមិនផ្លាស់ប្តូរ ដូចដែលមានគោលគំនិតជាមូលដ្ឋានជាច្រើន៖ abstractions, namespaces, modularity, types. ប៉ុន្តែសំណុំនៃភាសាដែលគំនិតទាំងនេះត្រូវបានបង្ហាញបានផ្លាស់ប្តូរទាំងស្រុង។ នៅពេលដែលវគ្គសិក្សាត្រូវបានបង្កើតឡើងដំបូង មានឧទាហរណ៍ជាច្រើននៅក្នុង Pascal ប៉ុន្តែសព្វថ្ងៃនេះ សិស្សរបស់ខ្ញុំជាច្រើននាក់មិនទាន់បានឮភាសានេះទេ។ ប៉ុន្តែពួកគេស្គាល់ Swift, Go, Rust ដូច្នេះខ្ញុំត្រូវនិយាយអំពីភាសាដែលប្រើប្រាស់សព្វថ្ងៃ។ ម្យ៉ាងទៀត សិស្សឥឡូវចេះភាសាស្គ្រីបបានល្អ ប៉ុន្តែនៅពេលខ្ញុំចាប់ផ្តើមបង្រៀនវគ្គនេះ វានិយាយអំពីភាសាចងក្រងទាំងអស់។ ឥឡូវនេះយើងត្រូវការសម្ភារៈជាច្រើនអំពី Python, Ruby និងសូម្បីតែ Perl ពីព្រោះនេះគឺជាអ្វីដែលកូដត្រូវបានសរសេរក្នុងថ្ងៃនេះ ហើយមានរឿងគួរឱ្យចាប់អារម្មណ៍ជាច្រើនដែលកើតឡើងនៅក្នុងភាសាទាំងនេះ រួមទាំងនៅក្នុងផ្នែកនៃការរចនាភាសាផងដែរ។
វីតាលី៖ បន្ទាប់មកសំណួរបន្ទាប់របស់ខ្ញុំនឹងទាក់ទងនឹងសំណួរមុន។ តើធ្វើដូចម្តេចដើម្បីរក្សានៅក្នុងតំបន់នេះ? ខ្ញុំសង្ស័យថាការធ្វើបច្ចុប្បន្នភាពវគ្គសិក្សាបែបនេះតម្រូវឱ្យមានការងារច្រើន - អ្នកត្រូវយល់ភាសាថ្មីយល់ពីគំនិតសំខាន់ៗ។ តើអ្នកធ្វើបែបនេះដោយរបៀបណា?
ម៉ៃឃើល៖ ខ្ញុំមិនអាចអួតថាខ្ញុំតែងតែជោគជ័យ 100% នោះទេ។ ប៉ុន្តែភាគច្រើនខ្ញុំគ្រាន់តែធ្វើអ្វីដែលអ្នកផ្សេងទៀតធ្វើ - អានអ៊ីនធឺណិត។ ប្រសិនបើខ្ញុំចង់យល់ Rust ខ្ញុំ Google វា ចូលទៅកាន់ទំព័រ Mozilla ហើយអានសៀវភៅណែនាំដែលបានបង្ហោះនៅទីនោះ។ នេះគឺជាផ្នែកមួយនៃអ្វីដែលកើតឡើងនៅក្នុងការអភិវឌ្ឍន៍ពាណិជ្ជកម្ម។ ប្រសិនបើយើងនិយាយអំពីវិទ្យាសាស្ត្រ នោះអ្នកត្រូវធ្វើតាមរបាយការណ៍នៅឯសន្និសីទសំខាន់ៗ។
ទំនាក់ទំនងរវាងអាជីវកម្ម និងបណ្ឌិត្យសភា
វីតាលី៖ ចូរនិយាយអំពីការតភ្ជាប់រវាងអាជីវកម្ម និងការស្រាវជ្រាវវិទ្យាសាស្ត្រ។ នៅក្នុងបញ្ជីការងាររបស់អ្នក ខ្ញុំបានរកឃើញអត្ថបទជាច្រើនស្តីពីការភ្ជាប់ឃ្លាំងសម្ងាត់។ ខ្ញុំយល់ថា ក្បួនដោះស្រាយភាពស៊ីសង្វាក់នៃឃ្លាំងសម្ងាត់មិនស្ថិតស្ថេរនៅពេលពួកគេត្រូវបានបោះពុម្ព? ឬមិនរីករាលដាលគ្រប់គ្រាន់។ តើគំនិតរបស់អ្នកមានលក្ខណៈសាមញ្ញប៉ុណ្ណាក្នុងការអនុវត្ត?
ម៉ៃឃើល៖ ខ្ញុំមិនប្រាកដថាការបោះពុម្ពផ្សាយណាដែលអ្នកកំពុងនិយាយ។ ខ្ញុំបានធ្វើការងារតិចតួចជាមួយសិស្សរបស់ខ្ញុំ Bill Bolosky () និង Leonidas Kontotanassis () នៅដើមទសវត្សរ៍ឆ្នាំ 1990 លើការគ្រប់គ្រងអង្គចងចាំរបស់ម៉ាស៊ីន Neumann ។ នៅពេលនោះ អាជីវកម្មមិនទាន់មានការយល់ដឹងអំពីរបៀបបង្កើតប្រព័ន្ធពហុដំណើរការឱ្យបានត្រឹមត្រូវទេ៖ តើវាមានតម្លៃបង្កើតការគាំទ្រសម្រាប់ការចូលប្រើអង្គចងចាំពីចម្ងាយនៅកម្រិតផ្នែករឹង តើវាមានតម្លៃធ្វើឱ្យអង្គចងចាំចែកចាយដែរឬទេ តើវាអាចទៅរួចទេក្នុងការផ្ទុកឃ្លាំងសម្ងាត់ពី អង្គចងចាំពីចម្ងាយ ឬចាំបាច់ត្រូវផ្លាស់ទីទំព័រនៅក្នុងបន្ទប់ប្រតិបត្តិការ? Bill និង Leonidas ទាំងពីរនាក់បានធ្វើការនៅក្នុងតំបន់នេះ ហើយបានស្វែងរកវិធីសាស្រ្តដោយគ្មានការផ្ទុកឃ្លាំងសម្ងាត់ពីចម្ងាយ។ នេះមិនទាក់ទងដោយផ្ទាល់ទៅនឹងភាពជាប់គ្នានៃឃ្លាំងសម្ងាត់នោះទេ ប៉ុន្តែវានៅតែដំណើរការលើការគ្រប់គ្រងអង្គចងចាំ NUMA ហើយវិធីសាស្រ្តទំនើបជាបន្តបន្ទាប់ក្នុងការដាក់ទំព័រនៅក្នុងប្រព័ន្ធប្រតិបត្តិការទំនើបបានកើនឡើងពីនេះ។ សរុបមក លោក Bill និង Leonidas បានធ្វើការងារសំខាន់ៗ ទោះបីជាមិនមែនជាអ្នកមានឥទ្ធិពលបំផុតនៅក្នុងតំបន់នេះក៏ដោយ ក៏មានមនុស្សជាច្រើនទៀតដែលធ្វើការលើរឿងដូចគ្នានៅពេលនោះ។ ក្រោយមក ខ្ញុំបានធ្វើការលើប្រធានបទដែលទាក់ទងនឹងការភ្ជាប់ឃ្លាំងសម្ងាត់នៅក្នុងបរិបទនៃអង្គចងចាំប្រតិបត្តិការផ្នែករឹង។ ក្រុមដែលខ្ញុំបានធ្វើការជាមួយលើបញ្ហានេះបានបញ្ចប់ដោយទទួលបានប៉ាតង់ជាច្រើន។ មានគំនិតគួរឱ្យចាប់អារម្មណ៍មួយចំនួននៅពីក្រោយពួកគេ ប៉ុន្តែខ្ញុំមិនគិតថាពួកគេនឹងបញ្ចប់ដោយការអនុវត្តនៅក្នុងការអនុវត្ត។ វិធីមួយ ឬមធ្យោបាយផ្សេងទៀត វាជាការលំបាកសម្រាប់ខ្ញុំក្នុងការវិនិច្ឆ័យប្រាក់ចំណេញរបស់ពួកគេ។
Алексей៖ ក្នុងន័យនេះ សំណួរផ្ទាល់ខ្លួនមួយ៖ តើវាសំខាន់យ៉ាងណាចំពោះអ្នក ដែលគំនិតរបស់អ្នកត្រូវបានដាក់ឱ្យអនុវត្ត? ឬអ្នកមិនគិតពីវា?
ម៉ៃឃើល៖ ខ្ញុំចូលចិត្តសួរសំណួរនេះនៅក្នុងការសម្ភាសន៍ជាមួយមនុស្សផ្សេងទៀត បេក្ខជន ឬបេក្ខជនដែលចង់ចូលរួមមហាវិទ្យាល័យ។ ខ្ញុំគិតថាមិនមានចម្លើយត្រឹមត្រូវចំពោះសំណួរនេះទេ។ មនុស្សដែលធ្វើរឿងត្រជាក់អាចមានការលើកទឹកចិត្តខុសគ្នា។ ខ្ញុំចាប់អារម្មណ៍នឹងបញ្ហា ដោយសារខ្ញុំផ្ទាល់យល់ថាពួកគេគួរឱ្យចាប់អារម្មណ៍ មិនមែនដោយសារតែអត្ថប្រយោជន៍ជាក់ស្តែងរបស់ពួកគេនោះទេ។ ប៉ុន្តែម្យ៉ាងវិញទៀត នៅពេលដែលអ្វីដែលគួរឱ្យចាប់អារម្មណ៍មួយចំនួននៅតែរកឃើញកម្មវិធី ខ្ញុំពិតជាចូលចិត្តវា។ ដូច្នេះវាមិនងាយស្រួលទេនៅទីនេះ។ ប៉ុន្តែនៅដើមដំបូងនៃការងារខ្ញុំនៅតែត្រូវបានជំរុញមិនមែនដោយគំនិតនៃការប្រើប្រាស់ចុងក្រោយនៅក្នុងពិភពលោកនោះទេប៉ុន្តែដោយភាពសុខដុមនៃគំនិតនិងបំណងប្រាថ្នាដើម្បីរុករកវានិងមើលឃើញអ្វីដែលមកពីវា។ ប្រសិនបើនៅទីបញ្ចប់វាផ្តល់នូវលទ្ធផលជាក់ស្តែងគឺអស្ចារ្យណាស់។
Алексей៖ ដោយសារការអប់រំ និងបទពិសោធន៍របស់អ្នក អ្នកពូកែជាងភាគច្រើនក្នុងការវិនិច្ឆ័យតម្លៃនៃគំនិតរបស់អ្នកដទៃ។ អ្នកអាចប្រៀបធៀបពួកវា និងកំណត់ថាតើមួយណាដំណើរការល្អជាង។ ខ្ញុំប្រាកដថាអ្នកមានគំនិតអំពីអ្វីដែលបច្ចុប្បន្នកំពុងត្រូវបានប្រើប្រាស់ក្នុងការអនុវត្តដោយក្រុមហ៊ុនផលិតធំៗដូចជា Intel ជាដើម។ តាមទស្សនៈរបស់អ្នក តើវគ្គសិក្សាដែលក្រុមហ៊ុនទាំងនេះកំពុងរៀនត្រឹមត្រូវប៉ុណ្ណា?
ម៉ៃឃើល៖ ការអនុវត្តតែងតែវិលជុំវិញអ្វីដែលអាចជោគជ័យក្នុងពាណិជ្ជកម្ម ពោលគឺបង្កើតប្រាក់ចំណេញ ហើយអ្នកសួរអ្នកផ្សេងអំពីរឿងនោះ។ ការងាររបស់ខ្ញុំភាគច្រើនមានលទ្ធផលនៅក្នុងការបោះពុម្ពផ្សាយ ហើយនៅក្នុងវិស័យប្រព័ន្ធប្រតិបត្តិការ ពួកគេត្រូវបានវាយតម្លៃដោយផ្អែកលើសូចនាករការអនុវត្ត៖ ល្បឿន ការប្រើប្រាស់ថាមពល ទំហំកូដ។ ប៉ុន្តែវាតែងតែហាក់ដូចជាខ្ញុំថាលទ្ធផលជាក់ស្តែងទាំងនេះត្រូវបានបន្ថែមទៅអត្ថបទតែប៉ុណ្ណោះដើម្បីឱ្យពួកគេអាចបោះពុម្ពបាន ហើយការជម្រុញពិតប្រាកដរបស់មនុស្សសម្រាប់ការងារគឺសោភ័ណភាព។ អ្នកស្រាវជ្រាវវាយតម្លៃដំណោះស្រាយតាមទស្សនៈសិល្បៈ ពួកគេយកចិត្តទុកដាក់ថាតើគំនិតមានភាពឆើតឆាយប៉ុណ្ណា ហើយពួកគេព្យាយាមបង្កើតអ្វីដែលប្រសើរជាងវិធីសាស្រ្តដែលមានស្រាប់។ អ្នកស្រាវជ្រាវត្រូវបានជំរុញដោយការជម្រុញផ្ទាល់ខ្លួន ប្រធានបទ សោភ័ណភាព។ ប៉ុន្តែអ្នកមិនអាចសរសេរអំពីរឿងនេះនៅក្នុងអត្ថបទដោយខ្លួនឯងបានទេ រឿងទាំងនេះមិនមែនជាអំណះអំណាងសម្រាប់គណៈកម្មាធិការកម្មវិធីនោះទេ។ ជាសំណាងល្អ ដំណោះស្រាយដ៏ប្រណិតជាញឹកញាប់ក៏លឿន និងថោកផងដែរ។ សហសេវិកជាច្រើននាក់ និងខ្ញុំបានពិភាក្សាអំពីប្រធានបទនេះកាលពី 15 ឆ្នាំមុន ហើយបានបញ្ចប់ការសរសេរអត្ថបទអំពីវា។ ខ្ញុំគិតថាអ្នកនៅតែអាចរកឃើញវាឥឡូវនេះ វាត្រូវបានគេហៅថា ឬអ្វីមួយដូចនោះ វាមានអ្នកនិពន្ធច្រើនជាងដប់នាក់។ នេះជាអត្ថបទតែមួយគត់ដែលខ្ញុំជាអ្នកនិពន្ធរួមគ្នាជាមួយ ដូច្នេះ ប្រសិនបើអ្នកស្វែងរកឈ្មោះរបស់នាងនៅក្នុងបញ្ជីបោះពុម្ពរបស់ខ្ញុំ អ្នកនឹងរកឃើញអ្វីដែលអ្នកត្រូវការ។ វានិយាយអំពីការវាយតម្លៃការស្រាវជ្រាវប្រព័ន្ធ និងថាតើភាពឆើតឆាយមានសារៈសំខាន់យ៉ាងណា។
Алексей៖ ដូច្នេះមានភាពខុសគ្នារវាងស្តង់ដារនៃអ្វីដែលត្រូវបានគេចាត់ទុកថាល្អក្នុងវិទ្យាសាស្ត្រ និងក្នុងអាជីវកម្ម។ វិទ្យាសាស្ត្រវាយតម្លៃការអនុវត្ត ការប្រើប្រាស់ថាមពល TDP ភាពងាយស្រួលនៃការអនុវត្ត និងច្រើនទៀត។ តើអ្នកមានឱកាសធ្វើការស្រាវជ្រាវប្រភេទនេះនៅសាកលវិទ្យាល័យទេ? តើអ្នកមានបន្ទប់ពិសោធន៍ដែលមានម៉ាស៊ីនផ្សេងគ្នា និងស្ថាបត្យកម្មផ្សេងគ្នាដែលអ្នកអាចធ្វើការពិសោធន៍ឬទេ?
ម៉ៃឃើល៖ បាទ នាយកដ្ឋានរបស់យើងមានម៉ាស៊ីនគួរឱ្យចាប់អារម្មណ៍ផ្សេងៗគ្នាជាច្រើន។ ភាគច្រើនជាញឹកញាប់ពួកវាតូច យើងមានចង្កោមតូចមួយ និងប្រព័ន្ធពហុដំណើរការជាច្រើនដែលមានឧបករណ៍បង្កើនល្បឿនខុសៗគ្នា។ លើសពីនេះ បរិវេណសាលាមានមជ្ឈមណ្ឌលកុំព្យូទ័រដ៏ធំមួយ ដែលបម្រើឱ្យអ្នកវិទ្យាសាស្ត្រមកពីច្រើនមុខវិជ្ជាផ្សេងៗគ្នា។ វាមានប្រហែលមួយពាន់ node និង XNUMX cores ទាំងអស់នៅលើលីនុច។ ប្រសិនបើតម្រូវការកើតឡើង អ្នកតែងតែអាចទិញ AWS មួយចំនួនបាន។ ដូច្នេះយើងមិនមានការរឹតបន្តឹងសំខាន់ជាមួយនឹងផ្នែករឹង។
Алексей៖ តើវាដូចជាសាមសិបឆ្នាំមុនយ៉ាងណា? តើពេលនោះមានបញ្ហាទេ?
ម៉ៃឃើល៖ វាខុសគ្នាបន្តិចនៅពេលនោះ។ នៅពាក់កណ្តាលទស្សវត្សរ៍ឆ្នាំ 1980 វិទ្យាសាស្ត្រត្រូវបានចាត់ទុកថាខ្វះធនធានកុំព្យូទ័រ។ ដើម្បីដោះស្រាយស្ថានភាពនេះ មូលនិធិវិទ្យាសាស្ត្រជាតិ ) បានបង្កើតកម្មវិធីនៃការស្រាវជ្រាវពិសោធន៍សម្របសម្រួល (Coordinated Experimental Research, CER) ។ បេសកកម្មរបស់កម្មវិធីគឺផ្តល់ហេដ្ឋារចនាសម្ព័ន្ធកុំព្យូទ័រសម្រាប់នាយកដ្ឋានវិទ្យាសាស្ត្រកុំព្យូទ័រ ហើយវាបានសម្រេចការផ្លាស់ប្តូរយ៉ាងសំខាន់។ ជាមួយនឹងប្រាក់ដែលនាងបានផ្តល់ឱ្យ យើងនៅសាកលវិទ្យាល័យ Rochester បានទិញ 1984-knot BBN Butterfly ក្នុងឆ្នាំ 128 នេះគឺមួយឆ្នាំមុនពេលដែលខ្ញុំបានទៅដល់ទីនោះ។ នៅពេលនោះ វាគឺជាប្រព័ន្ធ Multiprocessor ដ៏ធំបំផុតរបស់ពិភពលោក ដែលមានអង្គចងចាំរួម។ វាមាន 128 processors ដែលនីមួយៗនៅលើ motherboard ដាច់ដោយឡែក និងកាន់កាប់ 128 racks ។ ខួរក្បាលនីមួយៗមានអង្គចងចាំមួយមេហ្គាបៃ RAM ទំហំ XNUMX មេហ្គាបៃ គឺជាចំនួនដែលមិននឹកស្មានដល់នៅពេលនោះ។ នៅលើម៉ាស៊ីននេះ យើងបានអនុវត្តការចាក់សោ MCS ជាលើកដំបូង។
Алексей៖ អញ្ចឹងបើខ្ញុំយល់អ្នកបានត្រឹមត្រូវ តើនៅពេលនេះបញ្ហាជាមួយ Hardware ត្រូវបានដោះស្រាយហើយឬនៅ?
ម៉ៃឃើល៖ ជាទូទៅ បាទ។ មានការព្រមានមួយចំនួន៖ ទីមួយ ប្រសិនបើអ្នកកំពុងធ្វើស្ថាបត្យកម្មកុំព្យូទ័រនៅកម្រិតបន្ទះឈីប វាពិបាកក្នុងការធ្វើនៅក្នុងបរិយាកាសសិក្សា ព្រោះមានឧបករណ៍ដែលល្អជាងសម្រាប់ធ្វើនៅក្នុងអាជីវកម្ម។ ប្រសិនបើអ្នកត្រូវការអ្វីដែលតូចជាង 10 nanometers អ្នកនឹងត្រូវបញ្ជាវាពីអ្នកផ្សេង។ នៅក្នុងតំបន់នេះ វាកាន់តែងាយស្រួលក្នុងការធ្វើជាអ្នកស្រាវជ្រាវនៅ Intel ។ ប្រសិនបើអ្នកកំពុងធ្វើការលើទំនាក់ទំនងអុបទិកនៅលើបន្ទះឈីប ឬនៅលើអង្គចងចាំរឹង អ្នកនឹងរកឃើញបច្ចេកវិទ្យានៅក្នុងអាជីវកម្មដែលមិនទាន់មាននៅក្នុងវិទ្យាសាស្ត្រ ដូច្នេះអ្នកត្រូវតែបង្កើតសម្ព័ន្ធភាព។ ឧទាហរណ៍ Stephen Swanson () ត្រូវបានបង្កើតឡើង សម្រាប់បច្ចេកវិទ្យាចងចាំថ្មី។ ទម្រង់បែបបទនេះមិនតែងតែដំណើរការទេ ប៉ុន្តែក្នុងករណីខ្លះវាអាចទទួលបានជោគជ័យ។ លើសពីនេះ នៅក្នុងវិទ្យាសាស្ត្រ ការអភិវឌ្ឍន៍ប្រព័ន្ធកុំព្យូទ័រដ៏មានឥទ្ធិពលបំផុតគឺពិបាកជាង។ គម្រោងកុំព្យូទ័រទំនើបធំបំផុតបច្ចុប្បន្ននៅអាមេរិក ជប៉ុន និងចិន សុទ្ធតែផ្តោតលើអាជីវកម្ម។
ការអនុវត្តជាក់ស្តែងនៃគំនិត។ MCS, MS, CLH, JSR 166 ធ្វើការជាមួយ Doug Lee និងច្រើនទៀត។
វីតាលី៖ អ្នកបាននិយាយរួចហើយអំពីរបៀបដែលអ្នកចាប់ផ្តើមធ្វើការលើក្បួនដោះស្រាយសមកាលកម្ម។ អ្នកមានអត្ថបទល្បីពីរអំពី и ដែលក្នុងន័យមួយត្រូវបានអនុវត្តនៅក្នុង Java ។ (កំណត់សម្គាល់របស់អ្នកនិពន្ធ៖ ការបោះពុម្ពទាំងអស់អាចមើលបាន។ ) នៅទីនោះ ការទប់ស្កាត់នេះត្រូវបានអនុវត្តជាមួយនឹងការផ្លាស់ប្តូរមួយចំនួន ហើយវាបានប្រែក្លាយ ហើយជួរត្រូវបានអនុវត្តដូចបំណង។ ប៉ុន្តែជាច្រើនឆ្នាំបានកន្លងផុតទៅរវាងការបោះពុម្ពអត្ថបទរបស់អ្នក និងការអនុវត្តជាក់ស្តែងរបស់ពួកគេ។
Алексей៖ វាហាក់ដូចជាប្រហែល 10 ឆ្នាំនៅក្នុងករណីនៃជួរ។
ម៉ៃឃើល៖ មុនពេលលក្ខណៈពិសេសទាំងនេះបានបង្ហាញខ្លួននៅក្នុងបណ្ណាល័យស្តង់ដារ Java?
វីតាលី៖ បាទ។ តើអ្នកបានធ្វើអ្វីខ្លះដើម្បីឱ្យរឿងនេះកើតឡើង? ឬពួកគេមិនធ្វើអ្វីសោះ?
ម៉ៃឃើល៖ ខ្ញុំអាចប្រាប់អ្នកពីរបៀបដែល MS Queue ចូលទៅក្នុង Java 5។ ប៉ុន្មានឆ្នាំមុនពេលវាចេញមក ខ្ញុំបានធ្វើការជាមួយក្រុម Mark Moyers នៅ Sun Microsystems នៅក្នុងមន្ទីរពិសោធន៍របស់ពួកគេនៅជិតទីក្រុងបូស្តុន។ គាត់បានរៀបចំសិក្ខាសាលាមួយសម្រាប់អ្នកដែលគាត់ស្គាល់ដែលកំពុងធ្វើការលើបញ្ហាដែលគួរឱ្យចាប់អារម្មណ៍ក្នុង multithreading ដោយសារតែគាត់ចង់ស្វែងរកប្រធានបទដែលគាត់អាចលក់ទៅឱ្យក្រុមហ៊ុនរបស់ពួកគេ។ នោះហើយជាកន្លែងដែលខ្ញុំបានជួប Doug Lea ជាលើកដំបូង។ Doug និងខ្ញុំ និងមនុស្សប្រហែល 25 នាក់ផ្សេងទៀតមកពី Sun បានរួមគ្នាពិភាក្សាអំពីបទបង្ហាញរបស់ Doug នៅលើ ដែលក្រោយមកបានក្លាយជា java.util.concurrent ។ នៅតាមផ្លូវ Doug បាននិយាយថាគាត់ចង់ប្រើជួរ MS ប៉ុន្តែសម្រាប់នេះគាត់ត្រូវការរាប់សម្រាប់ចំនួនធាតុនៅក្នុងជួរសម្រាប់ចំណុចប្រទាក់។ នោះគឺថានេះគួរតែត្រូវបានធ្វើដោយវិធីសាស្រ្តដោយឡែកពីគ្នា, អាតូមិច, ត្រឹមត្រូវនិងលឿន។ ខ្ញុំបានស្នើឱ្យគ្រាន់តែបន្ថែមលេខសៀរៀលទៅថ្នាំង ដោយយកចំនួនថ្នាំងទីមួយ និងលេខចុងក្រោយ ហើយដកលេខមួយចេញពីមួយទៀត។ Doug គ្រវីក្បាល ហើយនិយាយថា "ហេតុអ្វីមិនធ្វើ" ហើយបញ្ចប់ដោយការធ្វើវា។ យើងបានពិភាក្សាអំពីការអនុវត្តវិធីសាស្រ្តនេះនៅក្នុងបណ្ណាល័យ ប៉ុន្តែ Doug បានធ្វើកិច្ចការភាគច្រើនដោយខ្លួនឯង។ ជាលទ្ធផល គាត់អាចបង្កើតការគាំទ្រ multithreading ដ៏ល្អនៅក្នុង Java ។
Алексей៖ ដូច្នេះ ប្រសិនបើខ្ញុំយល់បានត្រឹមត្រូវ វិធីសាស្ត្រ .size() គួរតែជាផ្នែកនៃចំណុចប្រទាក់ជួរស្តង់ដារ ហើយវាគួរតែមានភាពស្មុគស្មាញនៃក្បួនដោះស្រាយ O(1)?
ម៉ៃឃើល៖ បាទ/ចាស ហើយបន្ថែមពីលើនេះ បញ្ជរដាច់ដោយឡែកមួយត្រូវបានទាមទារ។
Алексей៖ ដោយសារតែប្រសិនបើអ្នកហៅវិធីសាស្ត្រ .size() នៅក្នុង Java នោះលទ្ធផលត្រូវបានរំពឹងថានឹងមានភ្លាមៗ ហើយមិនផ្អែកលើទំហំពិតប្រាកដនៃការប្រមូលនោះទេ។ ខ្ញុំឃើញហើយ អរគុណ។
ម៉ៃឃើល៖ ពីរបីឆ្នាំក្រោយមក ខ្ញុំកំពុងធ្វើការលើរចនាសម្ព័ន្ធទិន្នន័យពីរជាមួយសិស្សរបស់ខ្ញុំ Bill Scherer - តាមពិតនេះគឺជាអ្វីដែលខ្ញុំនឹងនិយាយអំពី . Doug បានមករកយើងហើយនិយាយថាគាត់អាចប្រើពួកវានៅក្នុង Java Executor Framework ។ រួមគ្នាជាមួយលោក Bill ពួកគេបានបង្កើតការអនុវត្តពីរ ដែលហៅថា ជួរយុត្តិធម៌ និងអយុត្តិធម៌។ ខ្ញុំបានណែនាំពួកគេអំពីគម្រោងនេះ ទោះបីជាខ្ញុំមិនបានចូលរួមក្នុងការសរសេរកូដពិតប្រាកដក៏ដោយ។ ជាលទ្ធផលល្បឿននៃប្រតិបត្តិករបានកើនឡើងយ៉ាងខ្លាំង។
Владимир៖ តើអ្នកបានជួបប្រទះការអនុវត្តមិនត្រឹមត្រូវនៃក្បួនដោះស្រាយ ឬសំណើដើម្បីបន្ថែមមុខងារថ្មីៗទេ? ជាទូទៅ ការអនុវត្តគួរតែស្របគ្នានឹងទ្រឹស្តី ប៉ុន្តែជារឿយៗវាខុសគ្នា។ ឧបមាថាអ្នកបានសរសេរក្បួនដោះស្រាយមួយ ហើយនៅលើក្រដាសវាដំណើរការ ប៉ុន្តែមនុស្សដែលចូលរួមក្នុងការអនុវត្តបានចាប់ផ្តើមសួរអ្នកសម្រាប់លក្ខណៈពិសេសបន្ថែម ឬប្រភេទនៃការកែប្រែមួយចំនួននៃក្បួនដោះស្រាយ។ តើអ្នកធ្លាប់មានស្ថានភាពបែបនេះទេ?
ម៉ៃឃើល៖ ឧទាហរណ៍តែមួយគត់ដែលនរណាម្នាក់មករកខ្ញុំ ហើយសួរ "របៀបអនុវត្តវា" គឺជាសំណួររបស់ Doug ដែលខ្ញុំបាននិយាយរួចហើយ។ ប៉ុន្តែមានករណីមួយចំនួនដែលការផ្លាស់ប្តូរគួរឱ្យចាប់អារម្មណ៍ត្រូវបានធ្វើឡើងដើម្បីបំពេញតម្រូវការជាក់ស្តែង។ ឧទាហរណ៍ ក្រុម K42 នៅ IBM បានបំប្លែងសោ MCS និងធ្វើឱ្យវាក្លាយជាចំណុចប្រទាក់ស្តង់ដារ ដូច្នេះមិនចាំបាច់ឆ្លងកាត់ថ្នាំងជួរទៅក្រោយដើម្បីទទួល និងបញ្ចេញទម្លាប់នោះទេ។ អរគុណចំពោះចំណុចប្រទាក់ស្ដង់ដារនេះ គំនិតដែលស្រស់ស្អាតតាមទ្រឹស្តីបានចាប់ផ្តើមដំណើរការក្នុងការអនុវត្ត។ វាជារឿងគួរឱ្យភ្ញាក់ផ្អើលដែលពួកគេមិនដែលបានបោះពុម្ពអត្ថបទអំពីវា ហើយទោះបីជាពួកគេបានទទួលប៉ាតង់ក៏ដោយ ក្រោយមកពួកគេបានបោះបង់វាចោល។ គំនិតនេះគឺអស្ចារ្យណាស់ ហើយខ្ញុំព្យាយាមនិយាយអំពីវានៅពេលណាដែលអាចធ្វើទៅបាន។
មានករណីផ្សេងទៀតដែលមនុស្សបានធ្វើឱ្យប្រសើរឡើងចំពោះក្បួនដោះស្រាយដែលខ្ញុំបានបោះផ្សាយ។ ឧទាហរណ៍ ជួរ MS មានយន្តការដំឡើងពីរជំហាន ដែលមានន័យថាមាន CASs ពីរនៅលើផ្លូវសំខាន់នៃជួរ។ នៅលើរថយន្តចាស់ៗ CAS មានតម្លៃថ្លៃណាស់។ ក្រុមហ៊ុន Intel និងអ្នកផលិតផ្សេងទៀតបានបង្កើនប្រសិទ្ធភាពពួកវាបានយ៉ាងល្អនាពេលថ្មីៗនេះ ប៉ុន្តែនៅពេលមួយនេះគឺជាការណែនាំ 30 វដ្ត ដូច្នេះការមានច្រើនជាងមួយនៅលើផ្លូវសំខាន់គឺមិនចង់បាន។ ជាលទ្ធផល ជួរផ្សេងគ្នាត្រូវបានបង្កើតឡើងដែលស្រដៀងនឹងជួរ MS ប៉ុន្តែមានប្រតិបត្តិការអាតូមិកតែមួយគត់នៅលើផ្លូវសំខាន់។ នេះត្រូវបានសម្រេចដោយសារតែការពិតដែលថាក្នុងអំឡុងពេលជាក់លាក់នៃពេលវេលាប្រតិបត្តិការអាចចំណាយពេល O(n) ជាជាង O(1) ។ វាមិនទំនងទេ ប៉ុន្តែអាចទៅរួច។ វាបានកើតឡើងដោយសារតែការពិតដែលថានៅពេលជាក់លាក់ណាមួយក្បួនដោះស្រាយបានឆ្លងកាត់ជួរពីដំបូងទៅទីតាំងបច្ចុប្បន្ននៅក្នុងជួរនេះ។ ជាទូទៅ ក្បួនដោះស្រាយបានប្រែក្លាយជាជោគជ័យខ្លាំង។ តាមដែលខ្ញុំដឹង វាមិនត្រូវបានគេប្រើប្រាស់យ៉ាងទូលំទូលាយនោះទេ មួយផ្នែកដោយសារតែប្រតិបត្តិការអាតូមិកត្រូវការធនធានតិចជាងមុន។ ប៉ុន្តែគំនិតគឺអស្ចារ្យណាស់។ ខ្ញុំក៏ចូលចិត្តការងាររបស់ Dave Dice ពី Oracle ដែរ។ អ្វីគ្រប់យ៉ាងដែលគាត់ធ្វើគឺជាក់ស្តែងណាស់ ហើយគាត់ប្រើដែកយ៉ាងឆ្លាតវៃ។ គាត់មានដៃនៅក្នុងក្បួនដោះស្រាយការធ្វើសមកាលកម្មដែលដឹងអំពី NUMA និងរចនាសម្ព័ន្ធទិន្នន័យច្រើនខ្សែ។
Владимир៖ នៅពេលអ្នកសរសេរក្បួនដោះស្រាយ ឬបង្រៀនសិស្ស លទ្ធផលនៃការងាររបស់អ្នកមិនអាចមើលឃើញភ្លាមៗនោះទេ។ សហគមន៍ត្រូវការពេលវេលាខ្លះដើម្បីស្គាល់ និយាយថាអត្ថបទថ្មី។ ក្បួនដោះស្រាយថ្មីមិនស្វែងរកកម្មវិធីភ្លាមៗទេ។
ម៉ៃឃើល៖ វានៅឆ្ងាយពីភាពច្បាស់លាស់ភ្លាមៗថាតើអត្ថបទនេះនឹងមានសារៈសំខាន់ឬអត់។ ខ្ញុំគិតថា វានឹងគួរឱ្យចាប់អារម្មណ៍ក្នុងការធ្វើការសិក្សាលើឯកសារដែលបានឈ្នះពានរង្វាន់នៅក្នុងសន្និសីទ។ នោះគឺមើលអត្ថបទដែលមនុស្សនៅក្នុងគណៈកម្មាធិការកម្មវិធីនៅពេលមួយចាត់ទុកថាល្អបំផុត។ អ្នកត្រូវព្យាយាមគណនាតាមចំនួនតំណ និងឥទ្ធិពលលើអាជីវកម្មថា តើអត្ថបទទាំងនេះមានឥទ្ធិពលយ៉ាងណាក្នុងរយៈពេល 10, 20, 25 ឆ្នាំ។ ខ្ញុំសង្ស័យថានឹងមានការជាប់ទាក់ទងគ្នាខ្លាំងរវាងអ្នកទាំងពីរ។ វានឹងមិនសូន្យទេ ប៉ុន្តែភាគច្រើនទំនងជាវានឹងខ្សោយជាងយើងចង់បាន។ គំនិតជាច្រើននៅតែមិនបានអះអាងជាយូរមកហើយមុនពេលដែលវារីករាលដាល។ ជាឧទាហរណ៍ ចូរយើងយកអង្គចងចាំប្រតិបត្តិការ។ ជាង 10 ឆ្នាំបានកន្លងផុតទៅចាប់ពីពេលដែលអត្ថបទដើមត្រូវបានបោះពុម្ពរហូតដល់ពេលដែលមនុស្សចាប់ផ្តើមសាងសង់ម៉ាស៊ីនជាមួយវា។ ហើយមុនពេលរូបរាងនៃការចងចាំនេះនៅក្នុងផលិតផលពាណិជ្ជកម្ម - និងទាំងអស់ 20. អស់រយៈពេលជាយូរមកហើយគ្មាននរណាម្នាក់យកចិត្តទុកដាក់លើអត្ថបទនោះទេហើយបន្ទាប់មកចំនួននៃតំណភ្ជាប់ទៅវាបានកើនឡើងយ៉ាងខ្លាំង។ វានឹងពិបាកក្នុងការទស្សន៍ទាយរឿងនេះជាមុន។ ម្យ៉ាងវិញទៀត ពេលខ្លះគំនិតរកឃើញការអនុវត្តភ្លាមៗ។ កាលពីប៉ុន្មានឆ្នាំមុន ខ្ញុំបានសរសេរក្រដាសមួយជាមួយ Joe Izraelevitz សម្រាប់ DISC ដែលស្នើនិយមន័យផ្លូវការថ្មីនៃសុពលភាពសម្រាប់រចនាសម្ព័ន្ធទិន្នន័យជាប់លាប់ដែលអាចប្រើបានបន្ទាប់ពីកុំព្យូទ័រដែលដំណើរការពួកវាគាំង។ ខ្ញុំចូលចិត្តអត្ថបទតាំងពីដំបូងមកម្ល៉េះ ប៉ុន្តែវាប្រែជាពេញនិយមជាងការរំពឹងទុក។ វាត្រូវបានប្រើដោយក្រុមផ្សេងគ្នាជាច្រើន ហើយនៅទីបំផុតបានក្លាយជានិយមន័យស្តង់ដារនៃរចនាសម្ព័ន្ធជាប់រហូត។ ដែលជាការពិតណាស់គឺល្អណាស់។
Владимир៖ តើមានបច្ចេកទេសណាដែលអ្នកប្រើសម្រាប់ការវាយតម្លៃ? តើអ្នកថែមទាំងព្យាយាមវាយតម្លៃអត្ថបទរបស់អ្នក និងសិស្សរបស់អ្នកដែរឬទេ? បើនិយាយថាតើបុគ្គលដែលអ្នកបានបង្រៀននោះកំពុងដើរក្នុងទិសដៅត្រឹមត្រូវឬអត់។
ម៉ៃឃើល៖ ដូចអ្នកដទៃដែរ ខ្ញុំយកចិត្តទុកដាក់បន្ថែមទៀតលើអ្វីដែលខ្ញុំកំពុងធ្វើនៅពេលនេះ។ ជាថ្មីម្តងទៀត ដូចអ្នកដទៃទៀតដែរ ខ្ញុំពិនិត្យ Google Scholar ម្តងម្កាល ដើម្បីមើលថាតើឯកសារអតីតកាលរបស់ខ្ញុំត្រូវបានដកស្រង់ ឬអត់ ប៉ុន្តែនោះជាការចង់ដឹងចង់ឃើញច្រើនជាង។ ភាគច្រើនខ្ញុំជក់ចិត្តនឹងអ្វីដែលសិស្សរបស់ខ្ញុំកំពុងធ្វើនៅពេលនេះ។ នៅពេលនិយាយអំពីការវាយតម្លៃការងារបច្ចុប្បន្ន ផ្នែកមួយគឺការពិចារណាអំពីសោភ័ណភាព អ្វីដែលឆើតឆាយ និងអ្វីដែលមិនមែន។ ហើយនៅកម្រិតប្រចាំថ្ងៃ សំណួរបើកចំហដើរតួនាទីយ៉ាងធំ។ ជាឧទាហរណ៍ សិស្សម្នាក់មករកខ្ញុំជាមួយនឹងក្រាហ្វនៃលទ្ធផលមួយចំនួន ហើយយើងកំពុងព្យាយាមស្វែងយល់ថាតើអាកប្បកិរិយាចម្លែកមួយចំនួនរបស់ក្រាហ្វបានមកពីណា។ ជាទូទៅក្នុងការងាររបស់យើង យើងព្យាយាមជានិច្ចដើម្បីយល់នូវអ្វីដែលយើងមិនទាន់យល់។
អង្គចងចាំប្រតិបត្តិការ
វីតាលី៖ ប្រហែលជាយើងអាចនិយាយបន្តិចអំពីការចងចាំប្រតិបត្តិការ?
ម៉ៃឃើល៖ ខ្ញុំគិតថាវាគួរនិយាយយ៉ាងហោចណាស់បន្តិចព្រោះខ្ញុំបានប្រឹងប្រែងខ្លាំងក្នុងវា។ នេះជាប្រធានបទដែលខ្ញុំមានការបោះពុម្ពច្រើនជាងអ្វីផ្សេងទៀត។ ប៉ុន្តែនៅពេលជាមួយគ្នានេះ ចម្លែកគ្រប់គ្រាន់ ខ្ញុំតែងតែមានការសង្ស័យយ៉ាងខ្លាំងអំពីការចងចាំប្រតិបត្តិការ។ ក្នុងគំណិតរបស់ខ្ញុំ, (M. Herlihy, J. E. B. Moss) ត្រូវបានបោះពុម្ពមុនពេលវេលារបស់វា។ នៅដើមទសវត្សរ៍ឆ្នាំ 1990 ពួកគេបានស្នើថាការចងចាំប្រតិបត្តិការអាចជួយអ្នកសរសេរកម្មវិធីដែលមានទេពកោសល្យធ្វើការលើរចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែ ដូច្នេះរចនាសម្ព័ន្ធទាំងនេះអាចត្រូវបានប្រើជាបណ្ណាល័យដោយអ្នកសរសេរកម្មវិធីធម្មតា។ នោះគឺវានឹងក្លាយជាជំនួយសម្រាប់ Doug Lee ដែលធ្វើ JSR 166 របស់គាត់។ ប៉ុន្តែការចងចាំប្រតិបត្តិការមិនមានបំណងធ្វើឱ្យកម្មវិធីពហុខ្សែមានភាពងាយស្រួលនោះទេ។ ប៉ុន្តែនេះពិតជារបៀបដែលវាចាប់ផ្តើមត្រូវបានយល់ឃើញនៅដើមទសវត្សរ៍ឆ្នាំ 2000 នៅពេលដែលវារីករាលដាល។ វាត្រូវបានផ្សព្វផ្សាយជាមធ្យោបាយដោះស្រាយបញ្ហានៃការសរសេរកម្មវិធីប៉ារ៉ាឡែល។ វិធីសាស្រ្តនេះហាក់ដូចជាអស់សង្ឃឹមសម្រាប់ខ្ញុំជានិច្ច។ អង្គចងចាំប្រតិបត្តិការអាចធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការសរសេររចនាសម្ព័ន្ធទិន្នន័យស្របគ្នា។ នេះហាក់ដូចជាខ្ញុំជាអ្វីដែលនាងសម្រេចបាន។
អំពីការលំបាកក្នុងការសរសេរកូដពហុខ្សែ
Алексей: គួរឱ្យចាប់អារម្មណ៍ណាស់។ វាហាក់ដូចជាមានឧបសគ្គជាក់លាក់មួយរវាងអ្នកសរសេរកម្មវិធីធម្មតា និងអ្នកដែលអាចសរសេរកូដពហុខ្សែ។ កាលពីឆ្នាំមុន ខ្ញុំបាននិយាយជាច្រើនដងជាមួយអ្នកដែលកំពុងអនុវត្តក្របខ័ណ្ឌក្បួនដោះស្រាយមួយចំនួន។ ឧទាហរណ៍ជាមួយ Martin Thomson ក៏ដូចជាជាមួយអ្នកសរសេរកម្មវិធីដែលធ្វើការលើបណ្ណាល័យពហុខ្សែ។ (កំណត់សម្គាល់របស់អ្នកនិពន្ធ៖ Martin Thompson គឺជាអ្នកអភិវឌ្ឍន៍ដ៏ល្បីម្នាក់ គាត់បានសរសេរ и . ហើយគាត់ក៏មានដែរ។ នៅក្នុងសន្និសីទ Joker 2015 របស់យើង ការថតវីដេអូ . គាត់ក៏ដូចគ្នាដែរ។ សន្និសីទនេះ។ មានផងដែរ) ។ ពួកគេនិយាយថាបញ្ហាប្រឈមចម្បងគឺការធ្វើឱ្យក្បួនដោះស្រាយទាំងលឿន និងងាយស្រួលប្រើ។ នោះគឺពួកគេកំពុងព្យាយាមជម្នះឧបសគ្គនេះ និងទាក់ទាញមនុស្សឱ្យបានច្រើនតាមដែលអាចធ្វើទៅបានទៅកាន់តំបន់នេះ។ តើអ្នកគិតយ៉ាងណាចំពោះវា?
ម៉ៃឃើល៖ នេះគឺជាបញ្ហាចម្បងនៃ multithreading៖ របៀបសម្រេចបាននូវដំណើរការខ្ពស់ដោយមិនបង្កើនភាពស្មុគស្មាញនៃប្រព័ន្ធ។
Алексей៖ ដោយសារតែនៅពេលដែលពួកគេព្យាយាមជៀសវាងភាពស្មុគស្មាញ នោះក្បួនដោះស្រាយក្លាយជាសកលតិចជាង។
ម៉ៃឃើល៖ គន្លឹះនៅទីនេះគឺត្រូវបានរចនាយ៉ាងត្រឹមត្រូវ។ វាហាក់ដូចជាខ្ញុំថានេះជាទូទៅគឺជារឿងសំខាន់សម្រាប់ប្រព័ន្ធកុំព្យូទ័រជាវាលមួយ។ Butler Lampson ចូលចិត្តប្រើពាក្យនេះ ហើយគាត់ហៅយើងថា "ពាណិជ្ជករនៃការអរូបី" ។ បច្ចេកវិទ្យាសាមញ្ញមិនមានសព្វថ្ងៃនេះទេ។ ឧបករណ៍ដំណើរការដែលយើងប្រើមាន 10 ពាន់លានត្រង់ស៊ីស្ទ័រ - ភាពសាមញ្ញគឺចេញពីសំណួរ។ ក្នុងពេលជាមួយគ្នានេះ ISA មានភាពសាមញ្ញជាងខួរក្បាល ដោយសារយើងធ្វើការយូរណាស់មកហើយ ដើម្បីផ្តល់ឱ្យវានូវដំណើរការខ្ពស់ និងចំណុចប្រទាក់សាមញ្ញ។ ប៉ុន្តែអ្វីៗក៏មិនរលូនជាមួយនាងដែរ។ បញ្ហាដូចគ្នាគឺជាមួយនឹងឧបករណ៍បង្កើនល្បឿនដែលឥឡូវនេះកំពុងលេចឡើងនៅលើទីផ្សារ។ សំណួរកើតឡើង - របៀបបង្កើតចំណុចប្រទាក់ត្រឹមត្រូវសម្រាប់ GPU យន្តការអ៊ិនគ្រីប ការបង្ហាប់ យន្តការបំលែងកូដ យន្តការពិជគណិតលីនេអ៊ែរ ឬសូម្បីតែ FPGA ដែលអាចបត់បែនបាន។ តើធ្វើដូចម្តេចដើម្បីបង្កើតចំណុចប្រទាក់ដែលធ្វើឱ្យឧបករណ៍ងាយស្រួលប្រើនិងលាក់ភាពស្មុគស្មាញ? វានឹងមិនកម្ចាត់វាទេ ប៉ុន្តែលាក់វាពីអ្នកសរសេរកម្មវិធីសាមញ្ញ។
Алексей៖ ដូចដែលខ្ញុំយល់ហើយ យើងនៅតែមានឧបសគ្គក្នុងការយល់ដឹងអំពីអរូបី។ ចូរយកគំរូនៃការចងចាំ; នៅដំណាក់កាលនៃការអភិវឌ្ឍន៍វិទ្យាសាស្ត្រ និងបច្ចេកវិទ្យារបស់យើង នេះគឺជាការសង្ខេបដ៏សំខាន់មួយ។ សូមអរគុណចំពោះវា អ្នកសរសេរកម្មវិធីទាំងអស់ត្រូវបានបែងចែកជាពីរក្រុម៖ ផ្នែកធំជាងគឺជាអ្នកដែលមិនយល់ ហើយផ្នែកតូចជាងគឺជាអ្នកដែលយល់ ឬគិតថាពួកគេយល់។
ម៉ៃឃើល៖ នោះជាសំណួរល្អ - តើយើងណាម្នាក់យល់ពីគំរូនៃការចងចាំឬ?
វីតាលី៖ ជាពិសេសនៅក្នុង C++ ។
ម៉ៃឃើល៖ និយាយជាមួយ Hans Boehm ពេលខ្លះ។ គាត់គឺជាមនុស្សឆ្លាតបំផុតម្នាក់ដែលខ្ញុំស្គាល់ ដែលជាអ្នកជំនាញឈានមុខគេលើម៉ូដែលអង្គចងចាំ។ គាត់នឹងប្រាប់អ្នកភ្លាមថាមានច្រើនដែលគាត់មិនយល់។ ប៉ុន្តែប្រសិនបើយើងត្រលប់ទៅបញ្ហាអរូបីវិញ នោះតាមគំនិតរបស់ខ្ញុំ គំនិតសំខាន់បំផុតក្នុងវិស័យគំរូនៃការចងចាំក្នុងរយៈពេល 30 ឆ្នាំកន្លងមកនេះត្រូវបានបង្ហាញ។ . (កំណត់សម្គាល់របស់អ្នកនិពន្ធ៖ បញ្ជីពេញលេញនៃការបោះពុម្ពគឺអាចរកបាន ).
Алексей៖ សំណួររបស់ខ្ញុំគឺ៖ តើរបាំងនេះមកពីធម្មជាតិនៃគោលគំនិតទេ?
ម៉ៃឃើល៖ ទេ។ Sarita បានសន្និដ្ឋានថាជាមួយនឹងវិធីសាស្រ្តត្រឹមត្រូវអ្នកអាចលាក់ភាពស្មុគស្មាញទាំងអស់ដោយជោគជ័យទទួលបានប្រសិទ្ធភាពខ្ពស់និងផ្តល់ឱ្យអ្នកសរសេរកម្មវិធីនូវ API សាមញ្ញ។ ហើយប្រសិនបើអ្នកធ្វើតាម API នេះ អ្នកអាចសម្រេចបាននូវភាពស៊ីសង្វាក់គ្នា។ ខ្ញុំគិតថានេះជាគំរូត្រឹមត្រូវ។ សរសេរកូដដោយគ្មានការប្រណាំងទិន្នន័យ និងទទួលបានភាពជាប់លាប់តាមលំដាប់លំដោយ។ ជាការពិតណាស់ ដើម្បីកាត់បន្ថយលទ្ធភាពនៃការប្រណាំង ឧបករណ៍ពិសេសគឺត្រូវការជាចាំបាច់ ប៉ុន្តែនោះជាបញ្ហាមួយទៀត។
Владимир៖ តើមានពេលខ្លះនៅក្នុងអាជីពរបស់អ្នកទេ នៅពេលដែលបញ្ហាដែលហាក់ដូចជាត្រូវបានដោះស្រាយភ្លាមៗ ប្រែទៅជាមហន្តរាយ ឬវាប្រែថាបញ្ហានេះមិនអាចដោះស្រាយបាន? ជាឧទាហរណ៍ តាមទ្រឹស្ដី អ្នកអាចកំណត់លេខណាមួយ ឬកំណត់ថាតើលេខណាមួយជាលេខសំខាន់។ ប៉ុន្តែក្នុងការអនុវត្តវាអាចជាការលំបាកក្នុងការធ្វើជាមួយនឹងផ្នែករឹងបច្ចុប្បន្នវាពិបាកក្នុងការកំណត់លេខ។ មានរឿងស្រដៀងនឹងអ្នកដែរទេ?
ម៉ៃឃើល៖ ខ្ញុំមិនចាំអ្វីនោះភ្លាមៗទេ។ មានពេលខ្លះដែលវាហាក់ដូចជាខ្ញុំថាមិនមានអ្វីនៅសល់ដើម្បីធ្វើនៅក្នុងតំបន់ជាក់លាក់មួយ ប៉ុន្តែបន្ទាប់មកមានអ្វីថ្មី និងគួរឱ្យចាប់អារម្មណ៍បានកើតឡើងនៅទីនោះ។ ជាឧទាហរណ៍ ខ្ញុំគិតថាតំបន់នៃការតម្រង់ជួរគ្មានដែនកំណត់បានឈានដល់កាលកំណត់ហើយ។ បន្ទាប់ពីការធ្វើឱ្យប្រសើរឡើងជាច្រើនចំពោះជួរ MNS គ្មានអ្វីកើតឡើងទៀតទេ។ ហើយបន្ទាប់មក Morrison (Adam Morrison) និង Afek (Yehuda Afek) បានបង្កើត . វាច្បាស់ណាស់ថា ជួរពហុខ្សែស្រឡាយគ្មានដែនកំណត់គឺអាចធ្វើទៅបាន ដែលភាគច្រើនមានតែការណែនាំអំពីការទាញយក និងបង្កើននៅលើផ្លូវសំខាន់ប៉ុណ្ណោះ។ ហើយនេះបានធ្វើឱ្យវាអាចសម្រេចបាននូវលំដាប់នៃទំហំប្រតិបត្តិការល្អប្រសើរជាងមុន។ វាមិនមែនថាយើងមិនដឹងថាការប្រមូលនិងបង្កើនគឺជារឿងដែលមានប្រយោជន៍នោះទេ។ Eric Freudenthal បានសរសេរអំពីរឿងនេះនៅក្នុងការងាររបស់គាត់នៅលើ Ultracomputer ជាមួយ Allan Gottlieb នៅចុងទសវត្សរ៍ឆ្នាំ 1980 ប៉ុន្តែវាគឺអំពីជួរមានកំណត់។ Morrison និង Afek អាចប្រើការប្រមូលនិងបង្កើនលើជួរដែលគ្មានដែនកំណត់។
ស្ថាបត្យកម្មថ្មី។ តើការទទួលជ័យជម្នះនៃការចងចាំប្រតិបត្តិការជិតដល់ហើយឬនៅ?
Владимир៖ តើអ្នកកំពុងស្វែងរកដំណោះស្រាយស្ថាបត្យកម្មថ្មីដែលអាចមានប្រយោជន៍សម្រាប់ក្បួនដោះស្រាយមែនទេ?
ម៉ៃឃើល៖ ជាការពិតណាស់ មានរឿងជាច្រើនដែលខ្ញុំចង់ឃើញអនុវត្ត។
Владимирឧទាហរណ៍៖ តើប្រភេទអ្វី?
ម៉ៃឃើល៖ ជាដំបូង ផ្នែកបន្ថែមសាមញ្ញមួយចំនួនចំពោះអង្គចងចាំប្រតិបត្តិការកម្រិតផ្នែករឹងរបស់យើងនៅក្នុងប្រព័ន្ធដំណើរការ Intel និង IBM ។ ជាពិសេស ខ្ញុំចង់ឱ្យការផ្ទុក និងហាងដែលមិនមានប្រតិបត្តិការដែលទើបតែកើតឡើង ដើម្បីឱ្យមានភ្លាមៗនៅក្នុងប្រតិបត្តិការ។ ពួកវាភ្លាមៗនាំទៅរករង្វិលជុំនៅក្នុងលំដាប់ដែលកើតឡើងមុន ដូច្នេះពួកគេអាចពិបាក។ ប៉ុន្តែប្រសិនបើអ្នករក្សាស្រទាប់នៃភាពអរូបី វាមានរឿងគួរឱ្យចាប់អារម្មណ៍ជាច្រើនដែលអ្នកអាចធ្វើនៅខាងក្រៅប្រតិបត្តិការខណៈពេលដែលវាកំពុងកើតឡើង។ ខ្ញុំមិនដឹងថាការអនុវត្តនេះពិបាកប៉ុណ្ណាទេ ប៉ុន្តែវានឹងមានប្រយោជន៍ខ្លាំងណាស់។
អ្វីដែលមានប្រយោជន៍មួយទៀតគឺការផ្ទុកឃ្លាំងសម្ងាត់ពីអង្គចងចាំពីចម្ងាយ។ ខ្ញុំគិតថាមិនយូរមិនឆាប់នេះនឹងត្រូវបានសម្រេច។ បច្ចេកវិទ្យានេះនឹងអនុញ្ញាតឱ្យបង្កើតប្រព័ន្ធដែលមានអង្គចងចាំដែលបំបែក។ វាអាចរក្សាទុក 100 terabytes នៃ memory nonvolatile ក្នុង rack មួយ ហើយប្រព័ន្ធប្រតិបត្តិការខ្លួនឯងនឹងសម្រេចចិត្តយ៉ាងស្វាហាប់ថាតើផ្នែកណានៃ memory នោះគួរតែត្រូវគ្នានឹង space address របស់ processors ។ វានឹងមានប្រយោជន៍ខ្លាំងណាស់សម្រាប់ cloud computing ព្រោះថាវានឹងអនុញ្ញាតឱ្យមានអង្គចងចាំច្រើនត្រូវបានផ្តល់ទៅឱ្យកិច្ចការដែលត្រូវការវា។ ខ្ញុំគិតថានរណាម្នាក់នឹងធ្វើវា។
វីតាលី៖ ដើម្បីបញ្ចប់ការនិយាយអំពីអង្គចងចាំប្រតិបត្តិការ ខ្ញុំមានសំណួរមួយបន្ថែមទៀតលើប្រធានបទនេះ។ តើអង្គចងចាំប្រតិបត្តិការនៅទីបំផុតនឹងជំនួសរចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែស្តង់ដារទេ?
ម៉ៃឃើល៖ ទេ។ ប្រតិបត្តិការគឺជាយន្តការប៉ាន់ស្មាន។ នៅកម្រិតនៃការសរសេរកម្មវិធីទាំងនេះគឺជាសោអាតូមិក ប៉ុន្តែនៅខាងក្នុងវាគឺជាការរំពឹងទុក។ ការព្យាករណ៍បែបនេះដំណើរការប្រសិនបើការទស្សន៍ទាយភាគច្រើនត្រឹមត្រូវ។ ហេតុដូច្នេះហើយ អង្គចងចាំប្រតិបត្តិការដំណើរការល្អនៅពេលដែលខ្សែស្រលាយពិបាកទាក់ទងគ្នាទៅវិញទៅមក ហើយអ្នកគ្រាន់តែត្រូវប្រាកដថាមិនមានអន្តរកម្ម។ ប៉ុន្តែប្រសិនបើសារមួយចាប់ផ្តើមនៅចន្លោះខ្សែស្រឡាយ ប្រតិបត្តិការគឺមានប្រយោជន៍តិចតួច។ អនុញ្ញាតឱ្យខ្ញុំពន្យល់ យើងកំពុងនិយាយអំពីករណីនៅពេលដែលប្រតិបត្តិការត្រូវបានរុំជុំវិញប្រតិបត្តិការអាតូមិចទាំងមូល។ ពួកវានៅតែអាចប្រើដោយជោគជ័យជាសមាសធាតុសម្រាប់រចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែ។ ឧទាហរណ៍ ប្រសិនបើអ្នកត្រូវការ CAS បីពាក្យ ហើយអ្នកត្រូវ multithread បីរឿងតូចនៅកណ្តាលនៃ multithreaded algorithm ពិតប្រាកដដែលធ្វើការជាមួយ XNUMX threads ក្នុងពេលតែមួយ។ ជាទូទៅ ប្រតិបត្តិការអាចមានប្រយោជន៍ ប៉ុន្តែពួកគេនឹងមិនលុបបំបាត់តម្រូវការក្នុងការរចនារចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែឱ្យបានត្រឹមត្រូវនោះទេ។
អង្គចងចាំដែលមិនងាយនឹងបង្កជាហេតុ, Optane DIMM, ឧបករណ៍ដែលមានល្បឿនលឿនបំផុត។
វីតាលី៖ រឿងចុងក្រោយដែលខ្ញុំចង់និយាយគឺប្រធានបទនៃការស្រាវជ្រាវបច្ចុប្បន្នរបស់អ្នក៖ ការចងចាំដែលមិនងាយនឹងបង្កជាហេតុ។ តើយើងអាចរំពឹងអ្វីខ្លះនៅក្នុងតំបន់នេះនាពេលអនាគតដ៏ខ្លី? ប្រហែលជាអ្នកដឹងពីការអនុវត្តប្រកបដោយប្រសិទ្ធភាពដែលមានរួចហើយ?
ម៉ៃឃើល៖ ខ្ញុំមិនមែនជាអ្នកជំនាញផ្នែក Hardware ទេ ខ្ញុំគ្រាន់តែដឹងពីអ្វីដែលខ្ញុំបានអាននៅក្នុងព័ត៌មាន និងអ្វីដែលមិត្តរួមការងាររបស់ខ្ញុំប្រាប់ខ្ញុំប៉ុណ្ណោះ។ អ្នករាល់គ្នាបានឮហើយថាក្រុមហ៊ុន Intel លក់ ដែលមាន 3 ដងនៃការអាន latency និង 10 ដងនៃការសរសេរ latency ជាង RAM ថាមវន្ត។ ពួកវានឹងមានក្នុងពេលឆាប់ៗនេះក្នុងកំណែទំហំធំ។ វាជាការគួរឱ្យអស់សំណើចដែលគិតថាអ្នកអាចមានកុំព្យូទ័រយួរដៃដែលមាន RAM ដែលអាចអាសយដ្ឋានបាន terabytes ជាច្រើន។ វាទំនងជាថាក្នុងរយៈពេល 10 ឆ្នាំយើងនឹងសម្រេចចិត្តប្រើបច្ចេកវិទ្យាថ្មីនេះ ដោយសារយើងប្រើ DRAM - គ្រាន់តែបង្កើនកម្រិតសំឡេងប៉ុណ្ណោះ។ ប៉ុន្តែដោយសារឯករាជ្យភាពថាមពល ឱកាសថ្មីទាំងស្រុងបើកសម្រាប់យើង។ យើងអាចផ្លាស់ប្តូរជង់ផ្ទុកជាមូលដ្ឋាន ដើម្បីកុំឱ្យមានការបំបែករវាងអង្គចងចាំដំណើរការដែលអាចអាសយដ្ឋានបៃ និងអង្គចងចាំជាប់មានរចនាសម្ព័ន្ធប្លុក។ ដូច្នេះ យើងនឹងមិនចាំបាច់ធ្វើសៀរៀលអ្វីគ្រប់យ៉ាងដែលចាំបាច់ត្រូវផ្ទេរពីកម្មវិធីមួយដំណើរការទៅកម្មវិធីមួយទៀតទៅជាឯកសារដែលមានរចនាសម្ព័ន្ធប្លុកនោះទេ។ ពីនេះយើងអាចទាញយកគោលការណ៍សំខាន់ៗជាច្រើនដែលប៉ះពាល់ដល់ប្រព័ន្ធប្រតិបត្តិការ បរិស្ថានពេលដំណើរការ និងកន្លែងរក្សាទុកទិន្នន័យដែលបានចែកចាយ។ តំបន់នេះគួរឱ្យចាប់អារម្មណ៍ណាស់ក្នុងការធ្វើការ។ ដោយផ្ទាល់ វាជាការលំបាកសម្រាប់ខ្ញុំក្នុងការទស្សន៍ទាយពីអ្វីដែលវានឹងនាំទៅដល់ ប៉ុន្តែបញ្ហានៅទីនេះគឺគួរឱ្យរីករាយណាស់។ ប្រហែលជាមានការផ្លាស់ប្តូរបដិវត្តន៍នៅទីនេះ ហើយពួកគេធ្វើតាមធម្មជាតិពីការងារលើ multithreading ចាប់តាំងពីការបរាជ័យឡើងវិញគឺជាដំណើរការ "multithreading" នៅជាប់នឹងប្រតិបត្តិការធម្មតានៃប្រព័ន្ធ។
ប្រធានបទសំខាន់ទីពីរដែលខ្ញុំកំពុងធ្វើការនាពេលនេះគឺការគ្រប់គ្រងឧបករណ៍ដែលមានល្បឿនលឿនបំផុត និងការចូលប្រើឧបករណ៍ដែលមានសុវត្ថិភាពពីកន្លែងប្រើប្រាស់ជាមួយនឹងការគ្រប់គ្រងគោលការណ៍ជាប្រព័ន្ធ។ ក្នុងរយៈពេលប៉ុន្មានឆ្នាំថ្មីៗនេះ មាននិន្នាការដើម្បីផ្លាស់ទីការចូលប្រើឧបករណ៍ទៅកន្លែងប្រើប្រាស់។ នេះត្រូវបានធ្វើដោយសារតែជង់ខឺណែល TCP-IP មិនអាចដំណើរការនៅផ្នែកខាងលើនៃចំណុចប្រទាក់បណ្តាញដែលត្រូវការកញ្ចប់ព័ត៌មានថ្មីរៀងរាល់ 5 មីក្រូវិនាទីទេ វាគ្រាន់តែនឹងមិនបន្ត។ ដូច្នេះក្រុមហ៊ុនផលិតផ្តល់ការចូលប្រើដោយផ្ទាល់ទៅឧបករណ៍។ ប៉ុន្តែនេះមានន័យថាប្រព័ន្ធប្រតិបត្តិការបាត់បង់ការគ្រប់គ្រងដំណើរការហើយវាមិនអាចផ្តល់នូវការចូលដំណើរការត្រឹមត្រូវទៅកាន់ឧបករណ៍សម្រាប់កម្មវិធីប្រកួតប្រជែងនោះទេ។ ក្រុមស្រាវជ្រាវរបស់យើងជឿជាក់ថាការខ្វះខាតនេះអាចជៀសវាងបាន។ យើងនឹងមានអត្ថបទអំពីរឿងនេះនៅ USENIX ATC ក្នុងខែនេះ។ វាទាក់ទងទៅនឹងការងារលើការជាប់លាប់ ដោយសារអង្គចងចាំជាប់លាប់ដែលអាចគ្រប់គ្រងបានដោយបៃតដែលប្រើប្រាស់បានយូរគឺជាឧបករណ៍ដែលមាន I/O លឿនបំផុតដែលត្រូវការចូលប្រើក្នុងចន្លោះអ្នកប្រើប្រាស់។ ការស្រាវជ្រាវនេះបង្កើតវិធីសាស្រ្តថ្មីដែលអាចកើតមានចំពោះ microkernels, exokernels និងការប៉ុនប៉ងបែបប្រពៃណីផ្សេងទៀតដើម្បីផ្លាស់ទីមុខងារដោយសុវត្ថិភាពពីខឺណែល OS ទៅកន្លែងប្រើប្រាស់។
Владимир៖ អង្គចងចាំដែលអាចអាសយដ្ឋានបានបៃគឺអស្ចារ្យ ប៉ុន្តែមានដែនកំណត់រាងកាយ - ល្បឿននៃពន្លឺ។ នេះមានន័យថាវានឹងមានការពន្យាពេលដោយជៀសមិនរួចនៅពេលធ្វើអន្តរកម្មជាមួយឧបករណ៍។
ម៉ៃឃើល៖ ពិតជាត្រឹមត្រូវ។
Владимир៖ តើមានសមត្ថភាពគ្រប់គ្រាន់ដើម្បីទប់ទល់នឹងបន្ទុកថ្មីដែរឬទេ?
ម៉ៃឃើល៖ នេះជាសំណួរដ៏ល្អមួយ ប៉ុន្តែវានឹងពិបាកសម្រាប់ខ្ញុំក្នុងការឆ្លើយ។ គំនិតនៃដំណើរការនៅក្នុងអង្គចងចាំមានតាំងពីយូរយារណាស់មកហើយ វាគួរឱ្យចាប់អារម្មណ៍ណាស់ ប៉ុន្តែក៏ស្មុគស្មាញខ្លាំងផងដែរ។ ខ្ញុំមិនបានធ្វើការនៅតំបន់នេះទេ ប៉ុន្តែវាជាការល្អប្រសិនបើការរកឃើញមួយចំនួនត្រូវបានធ្វើឡើងនៅទីនោះ។ ខ្ញុំខ្លាចថាខ្ញុំគ្មានអ្វីត្រូវបន្ថែមទេ។
Владимир៖ មានបញ្ហាមួយទៀត។ ថ្មី បរិមាណ RAM ធំជាងនេះ នឹងមិនអាចសមនឹង CPU បានទេ។ ដូច្នេះ ដោយសារការកំណត់ផ្នែករាងកាយ RAM នេះត្រូវតែដាច់ដោយឡែក។
ម៉ៃឃើល៖ វាទាំងអស់គឺអាស្រ័យលើចំនួននៃពិការភាពក្នុងការផលិតសៀគ្វីរួមបញ្ចូលគ្នា។ ប្រសិនបើវាអាចធ្វើទៅបានដើម្បីបង្កើត wafers semiconductor ទាំងស្រុងដោយគ្មានពិការភាពនោះវានឹងអាចធ្វើទៅបានដើម្បីធ្វើឱ្យ microcircuit ទាំងមូលចេញពីវា។ ប៉ុន្តែឥឡូវនេះ យើងមិនដឹងពីរបៀបធ្វើមីក្រូសៀគ្វីធំជាងត្រាប្រៃសណីយ៍ទេ។
Владимир៖ ប៉ុន្តែយើងនៅតែនិយាយអំពីទំហំដ៏ធំគឺប្រហែលសង់ទីម៉ែត្រ។ នេះជៀសមិនរួចប៉ះពាល់ដល់ភាពយឺតយ៉ាវ។
ម៉ៃឃើល៖ បាទ។ មិនមានអ្វីដែលអ្នកអាចធ្វើបានអំពីល្បឿននៃពន្លឺនោះទេ។
Владимир: ជាអកុសល។
និន្នាការធំបន្ទាប់។ រចនាសម្ព័ន្ធទិន្នន័យពីរ។ អ៊ីដ្រា។
វីតាលី៖ តាមខ្ញុំយល់ អ្នកចាប់បាននិន្នាការថ្មីយ៉ាងលឿន។ អ្នកគឺជាមនុស្សដំបូងគេដែលធ្វើការក្នុងអង្គចងចាំប្រតិបត្តិការ ហើយជាអ្នកដំបូងគេដែលធ្វើការក្នុងអង្គចងចាំដែលមិនងាយនឹងបង្កជាហេតុ។ តើអ្នកគិតថាអ្វីនឹងក្លាយជានិន្នាការធំបន្ទាប់? ឬប្រហែលជាវាជាអាថ៌កំបាំង?
ម៉ៃឃើល៖ និយាយឱ្យត្រង់ទៅ ខ្ញុំមិនដឹងទេ។ សង្ឃឹមថាខ្ញុំនឹងអាចកត់សម្គាល់នៅពេលដែលមានអ្វីថ្មីកើតឡើង។ ខ្ញុំមិនមានសំណាងគ្រប់គ្រាន់ក្នុងការបង្កើតវិស័យថ្មីដោយខ្លួនឯងទេ ប៉ុន្តែខ្ញុំមានសំណាងមួយចំនួន ហើយអាចចាប់ផ្តើមធ្វើការបានលឿនក្នុងវិស័យថ្មីដែលបង្កើតឡើងដោយអ្នកដទៃ។ ខ្ញុំសង្ឃឹមថាខ្ញុំនឹងអាចធ្វើបែបនេះនៅពេលអនាគត។
Алексей៖ សំណួរចុងក្រោយនៅក្នុងបទសម្ភាសន៍នេះនឹងនិយាយអំពីការសម្តែងរបស់អ្នកនៅ Hydra និងសកម្មភាពរបស់អ្នកនៅសាលា។ ប្រសិនបើខ្ញុំយល់បានត្រឹមត្រូវ របាយការណ៍នៅសាលានឹងនិយាយអំពីក្បួនដោះស្រាយគ្មានការទប់ស្កាត់ ហើយនៅក្នុងសន្និសីទអំពីរចនាសម្ព័ន្ធទិន្នន័យទ្វេ។ តើអ្នកអាចនិយាយពាក្យពីរបីអំពីរបាយការណ៍ទាំងនេះបានទេ?
ម៉ៃឃើល៖ ជាផ្នែកមួយ យើងបានប៉ះលើប្រធានបទទាំងនេះរួចហើយជាមួយអ្នកក្នុងបទសម្ភាសនេះ។ វានិយាយអំពីការងារដែលខ្ញុំបានធ្វើជាមួយសិស្សរបស់ខ្ញុំ Bill Scherer ។ គាត់បានសរសេរនិក្ខេបបទមួយនៅលើវា ហើយ Doug Lee ក៏បានរួមចំណែកដល់វា ហើយទីបំផុតវាបានក្លាយជាផ្នែកមួយនៃជួរធ្វើសមកាលកម្មពហុខ្សែនៅក្នុងបណ្ណាល័យ Java ។ ចូរសន្មត់ថារចនាសម្ព័ន្ធទិន្នន័យត្រូវបានអាន និងសរសេរដោយគ្មានការទប់ស្កាត់ ពោលគឺប្រតិបត្តិការនីមួយៗមានការណែនាំចំនួនកំណត់នៅលើផ្លូវសំខាន់។ ប្រសិនបើអ្នកព្យាយាមយកទិន្នន័យចេញពីកុងតឺន័រទទេ ឬព្យាយាមលុបទិន្នន័យជាក់លាក់ដែលមិនមាននៅក្នុងធុងនេះ អ្នកត្រូវបានជូនដំណឹងភ្លាមៗថាវាមិនអាចធ្វើបានទេ។ ប៉ុន្តែឥរិយាបថនេះប្រហែលជាមិនអាចទទួលយកបានទេ ប្រសិនបើខ្សែស្រឡាយពិតជាត្រូវការទិន្នន័យនេះ។ បន្ទាប់មករឿងដំបូងដែលចូលមកក្នុងគំនិតគឺបង្កើតរង្វិលជុំដែលនឹងសួរជានិច្ចថាតើទិន្នន័យចាំបាច់បានបង្ហាញខ្លួនដែរឬទេ។ ប៉ុន្តែបន្ទាប់មកមានការជ្រៀតជ្រែកសម្រាប់មនុស្សគ្រប់គ្នា។ លើសពីនេះទៀតជាមួយនឹងវិធីសាស្រ្តនេះអ្នកអាចរង់ចាំ 10 នាទីហើយបន្ទាប់មកខ្សែស្រឡាយមួយចំនួនផ្សេងទៀតនឹងមកដល់ហើយវានឹងទទួលបានទិន្នន័យចាំបាច់ជាមុនដោយចៃដន្យ។ រចនាសម្ព័ន្ធទិន្នន័យពីរនៅតែមិនមានសោ ប៉ុន្តែពួកវាអនុញ្ញាតឱ្យខ្សែស្រឡាយរង់ចាំឱ្យបានត្រឹមត្រូវ។ ពាក្យ "ទ្វេ" មានន័យថារចនាសម្ព័ន្ធមានទាំងទិន្នន័យ ឬសំណើទិន្នន័យ ចូរយើងហៅពួកគេថាប្រឆាំងទិន្នន័យ។ ដូច្នេះ ប្រសិនបើអ្នកព្យាយាមទាញយកអ្វីមួយពីកុងតឺន័រទទេ សំណើនឹងត្រូវបានដាក់ចូលទៅក្នុងកុងតឺន័រជំនួសវិញ។ ឥឡូវនេះ ខ្សែស្រឡាយអាចរង់ចាំការស្នើសុំដោយមិនរំខាននរណាម្នាក់ផ្សេងទៀត។ លើសពីនេះ រចនាសម្ព័ន្ធទិន្នន័យផ្តល់អាទិភាពដល់សំណើ ដូច្នេះនៅពេលដែលបានទទួល វាបញ្ជូនពួកគេទៅមនុស្សត្រឹមត្រូវ។ លទ្ធផលគឺយន្តការមិនចាក់សោរដែលនៅតែមានការបញ្ជាក់ជាផ្លូវការ និងដំណើរការល្អក្នុងការអនុវត្ត។
Алексей៖ តើអ្វីជាការរំពឹងទុករបស់អ្នកពីរចនាសម្ព័ន្ធទិន្នន័យនេះ? តើវានឹងធ្វើឱ្យប្រសើរឡើងនូវការអនុវត្តនៅក្នុងករណីទូទៅទាំងអស់ ឬតើវាប្រសើរជាងសម្រាប់ស្ថានភាពជាក់លាក់ដែរឬទេ?
ម៉ៃឃើល៖ វាមានប្រយោជន៍ប្រសិនបើដំបូង អ្នកត្រូវការកុងតឺន័រដោយមិនចាក់សោ ហើយទីពីរ អ្នកត្រូវរង់ចាំក្នុងស្ថានភាពដែលអ្នកត្រូវការទាញយកទិន្នន័យពីកុងតឺន័រដែលមិនមាននៅក្នុងនោះ។ តាមចំណេះដឹងរបស់ខ្ញុំ ក្របខណ្ឌរបស់យើងផ្តល់នូវឥរិយាបទល្អបំផុត នៅពេលដែលលក្ខខណ្ឌទាំងពីរនេះត្រូវបានបំពេញ។ ដូច្នេះក្នុងករណីទាំងនេះខ្ញុំសូមណែនាំឱ្យប្រើវា។ អត្ថប្រយោជន៍ចម្បងនៃរចនាសម្ព័ន្ធទិន្នន័យគ្មានសោគឺថាពួកគេជៀសវាងបញ្ហាក្នុងការអនុវត្ត។ ហើយការរង់ចាំគឺមានសារៈសំខាន់ខ្លាំងណាស់នៅក្នុងក្បួនដោះស្រាយជាច្រើនប្រសិនបើទិន្នន័យត្រូវបានផ្ទេរពីខ្សែស្រឡាយមួយទៅខ្សែមួយទៀត។
វីតាលី៖ ខ្ញុំសូមបញ្ជាក់៖ តើអ្នកនឹងនិយាយរឿងដូចគ្នាទាំងនៅសាលា និងក្នុងសន្និសីទដែរឬទេ?
ម៉ៃឃើល: នៅសាលា ជាទូទៅអំពីរចនាសម្ព័ន្ធទិន្នន័យពហុខ្សែ ដោយមានគោលការណ៍ជាមូលដ្ឋានដែលបានរៀបរាប់នៅដើមមេរៀន។ ខ្ញុំសន្មត់ថាទស្សនិកជនដឹងពីអ្វីដែលជាខ្សែស្រឡាយ និងស៊ាំជាមួយសោ។ ដោយផ្អែកលើចំណេះដឹងជាមូលដ្ឋាននេះ ខ្ញុំនឹងនិយាយអំពីរចនាសម្ព័ន្ធទិន្នន័យដែលគ្មានការចាក់សោ។ ខ្ញុំនឹងផ្តល់ទិដ្ឋភាពទូទៅនៃបញ្ហាសំខាន់បំផុតនៅក្នុងតំបន់នេះ ដោយប៉ះលើប្រធានបទដូចជាការគ្រប់គ្រងអង្គចងចាំជាដើម។ ខ្ញុំមិនគិតថានឹងមានអ្វីស្មុគស្មាញជាងជួរ MS ទេ។
Алексей៖ តើអ្នកមានគម្រោងបង្រៀនអំពីរចនាសម្ព័ន្ធទិន្នន័យពីរនៅចុងបញ្ចប់នៃថ្នាក់រៀនរបស់អ្នកទេ?
ម៉ៃឃើល៖ ខ្ញុំនឹងរៀបរាប់ពួកគេ ប៉ុន្តែខ្ញុំនឹងមិនចំណាយពេលច្រើនលើពួកគេទេ។ របាយការណ៍ Hydra នឹងត្រូវបានឧទ្ទិសដល់ពួកគេ។ វានឹងគ្របដណ្តប់លើគម្រោងដែលទីបំផុតបានបង្កើតវាទៅជា Java ក៏ដូចជាធ្វើការជាមួយ Joe Israelevich ដើម្បីបង្កើតវ៉ារ្យ៉ង់ពីរនៃជួរ LCRQ និងបង្កើតការរចនាសកលសម្រាប់រចនាសម្ព័ន្ធទិន្នន័យពីរ។
Алексей: ដូច្នេះការបង្រៀននៅសាលាអាចត្រូវបានណែនាំសម្រាប់អ្នកចាប់ផ្តើមដំបូង ហើយការបង្រៀនអំពីរចនាសម្ព័ន្ធទិន្នន័យទ្វេនៅលើ Hydra - សម្រាប់មនុស្សដែលមានបទពិសោធន៍ខ្លះហើយ?
ម៉ៃឃើល៖ សូមកែតម្រូវប្រសិនបើខ្ញុំខុស ប៉ុន្តែទស្សនិកជននៅ Hydra នឹងមានភាពចម្រុះណាស់ រួមទាំងអ្នកជំនាញ Java ជាច្រើន និងមនុស្សទូទៅដែលមិនពាក់ព័ន្ធជាពិសេសក្នុងការសរសេរកម្មវិធីពហុខ្សែ។
វីតាលី: បាទវាគឺជាការពិត។
Алексей៖ យ៉ាងហោចណាស់យើងសង្ឃឹមដូច្នេះ។
ម៉ៃឃើល៖ ក្នុងករណីនេះ ខ្ញុំនឹងប្រឈមមុខនឹងបញ្ហាដូចគ្នាដែលយើងបានចាប់ផ្តើមកិច្ចសម្ភាសន៍នេះ៖ របៀបបង្កើតរបាយការណ៍ទាំងលម្អិតបច្ចេកទេសគ្រប់គ្រាន់ និងអាចចូលដំណើរការបានសម្រាប់អ្នកស្តាប់ទាំងអស់។
វីតាលី៖ តើអ្នកនឹងផ្តល់របាយការណ៍ដូចដែលអ្នកផ្តល់ការបង្រៀនដែរឬទេ? នោះគឺនិយាយជាមួយទស្សនិកជនហើយសម្របខ្លួនទៅនឹងស្ថានភាព?
ម៉ៃឃើល៖ ខ្ញុំខ្លាចថាវានឹងមិនដំណើរការបែបនោះទេ ព្រោះរបាយការណ៍នឹងមានស្លាយ។ ស្លាយមានសារៈសំខាន់នៅពេលអ្នកស្តាប់ដំបូងនិយាយភាសាផ្សេងៗ។ មនុស្សជាច្រើននឹងពិបាកយល់ខ្ញុំជាភាសាអង់គ្លេស ជាពិសេសប្រសិនបើខ្ញុំនិយាយលឿនពេក។ ខ្ញុំបានជ្រើសរើសប្រធានបទទាំងនេះដោយសារតែ បានស្នើឱ្យខ្ញុំនិយាយអំពីរចនាសម្ព័ន្ធទិន្នន័យគ្មានសោនៅសាលា SPTDC ។ ហើយបន្ទាប់មកខ្ញុំត្រូវការរបាយការណ៍សម្រាប់សន្និសីទក្រុមអ្នកប្រើប្រាស់ Java ហើយខ្ញុំចង់ជ្រើសរើសអ្វីមួយដែលចាប់អារម្មណ៍ជាពិសេសសម្រាប់អ្នកសរសេរកម្មវិធី Java ។ មធ្យោបាយងាយស្រួលបំផុតគឺនិយាយអំពីរឿងទាំងនោះនៅក្នុងបណ្ណាល័យ Java ដែលខ្ញុំមានដៃក្នុងមធ្យោបាយមួយឬផ្សេងទៀត។
Алексей៖ យើងសន្មត់ថាទស្សនិកជននៅលើ Hydra បានដឹងរួចមកហើយអំពីកម្មវិធីដែលគ្មានការចាក់សោ ហើយប្រហែលជាមានបទពិសោធន៍ខ្លះនៅក្នុងតំបន់នេះ។ ប៉ុន្តែនេះគ្រាន់តែជាការសន្មត់ប៉ុណ្ណោះ ស្ថានភាពនឹងកាន់តែច្បាស់នៅក្នុងសន្និសិទខ្លួនឯង។ ទោះយ៉ាងណាក៏ដោយ អរគុណសម្រាប់ពេលវេលារបស់អ្នក។ ខ្ញុំប្រាកដថាបទសម្ភាសន៍នឹងមានការចាប់អារម្មណ៍ខ្លាំងសម្រាប់អ្នកអានរបស់យើង។ អរគុណច្រើន!
វីតាលី៖ សូមអរគុណ។
ម៉ៃឃើល៖ ខ្ញុំនឹងរីករាយដែលបានជួបអ្នកនៅសាំងពេទឺប៊ឺគ។
Алексей៖ យើងក៏មានទីក្រុងដ៏ស្រស់ស្អាតមួយដែរ។ តើអ្នកធ្លាប់នៅទីនេះទេ?
ម៉ៃឃើល៖ ទេ ខ្ញុំមិនដែលទៅរុស្ស៊ីទាល់តែសោះ។ ប៉ុន្តែសាំងពេទឺប៊ឺគតែងតែស្ថិតនៅក្នុងបញ្ជីកន្លែងដែលខ្ញុំមិនទាន់បានទៅ ប៉ុន្តែកន្លែងដែលខ្ញុំពិតជាចង់ទៅ ដូច្នេះខ្ញុំសប្បាយចិត្តខ្លាំងណាស់ចំពោះការអញ្ជើញ។
Алексей៖ ដោយវិធីនេះ យើងនឹងមានកម្មវិធីដំណើរកំសាន្តសម្រាប់អ្នកនិយាយ។ អរគុណច្រើនសម្រាប់ការសម្ភាសន៍ ហើយមានថ្ងៃល្អ!
អ្នកអាចបន្តការសន្ទនារបស់អ្នកជាមួយ Michael នៅសន្និសីទ Hydra 2019 ដែលនឹងធ្វើឡើងនៅថ្ងៃទី 11-12 ខែកក្កដា ឆ្នាំ 2019 នៅ St. គាត់នឹងមកជាមួយរបាយការណ៍ . សំបុត្រអាចទិញបាន។ .
ប្រភព: www.habr.com
