Parallel EVM คือ Ethereum Virtual Machine หรือเอนจินประมวลผลที่เข้ากันได้กับ EVM ซึ่งประมวลผลธุรกรรมที่เป็นอิสระต่อกันแบบพร้อมกันบนหลายคอร์ CPU ธุรกรรมยังคงมีลำดับแบบดีเทอร์มินิสติกและต้องให้สถานะสุดท้ายเหมือนกับการประมวลผล EVM แบบเรียงลำดับที่ถูกต้อง การทำขนานเปลี่ยนวิธีที่โหนดคำนวณผลลัพธ์ภายใน ไม่ใช่ความหมายของสัญญา Solidity หรือสถานะบัญชีแยกประเภทที่เรียงลำดับซึ่งผู้ใช้มองเห็น

การออกแบบนี้มุ่งเป้าไปที่คอขวดด้านการประมวลผลที่พบในการประมวลผลแบบเธรดเดี่ยวทั่วไป เมื่อธุรกรรมแตะบัญชีหรือสล็อตพื้นที่จัดเก็บที่ไม่เกี่ยวข้องกัน โหนดสามารถทำงานกับธุรกรรมเหล่านั้นได้ในเวลาเดียวกัน เมื่อธุรกรรมขัดแย้งกัน เอนจินต้องตรวจจับความสัมพันธ์เชิงพึ่งพา ทิ้งหรือเลื่อนผลลัพธ์จากการคาดการณ์ที่ไม่ถูกต้องออกไป และประมวลผลธุรกรรมที่ได้รับผลกระทบกับสถานะก่อนหน้าที่ถูกต้อง ดังนั้นประสิทธิภาพจึงขึ้นอยู่กับความขัดแย้งของภาระงานและการออกแบบพื้นที่จัดเก็บเป็นอย่างมาก

Parallel EVM คืออะไร?

Parallel EVM คือสภาพแวดล้อมการประมวลผลที่เข้ากันได้กับ Ethereum ซึ่งสามารถประมวลผลธุรกรรมอิสระหลายรายการได้ในเวลาเดียวกัน แทนที่จะประมวลผลทุกธุรกรรมเรียงต่อกันอย่างเคร่งครัด โดยมีเป้าหมายเพื่อรักษา สมาร์ตคอนแทรกต์, แอดเดรส รูปแบบธุรกรรม และเครื่องมือสำหรับนักพัฒนาของ EVM ที่คุ้นเคยไว้ พร้อมทั้งเพิ่มปริมาณงานของธุรกรรม

การนำ Parallel EVM ไปใช้สามารถใช้วิธีที่แตกต่างกันในการระบุว่าธุรกรรมใดสามารถทำงานร่วมกันได้อย่างปลอดภัย บางระบบตรวจจับความขัดแย้งระหว่างการประมวลผล ส่วนบางระบบวิเคราะห์ว่าธุรกรรมแต่ละรายการจะเข้าถึงส่วนใดของสถานะบล็อกเชนก่อนจัดตารางการทำงาน ดังนั้น Parallel EVM จึงอธิบายแนวทางในการประมวลผล มากกว่าที่จะเป็นมาตรฐานสากลเพียงหนึ่งเดียว และเครือข่ายต่างๆ ยังคงแตกต่างกันได้ในด้านฉันทามติ ค่าธรรมเนียม ความเป็นที่สุดของธุรกรรม ข้อกำหนดด้านฮาร์ดแวร์ และความเข้ากันได้กับ Ethereum

Parallel EVM ทำงานอย่างไร?

Parallel EVM ทำงานโดยมอบหมายธุรกรรมจากบล็อกที่เรียงลำดับแล้วให้กับ worker หลายตัว และติดตามสถานะที่ธุรกรรมแต่ละรายการอ่านและเขียน ด้วยการประมวลผลแบบออปทิมิสติก ในตอนแรก worker จะถือว่าธุรกรรมสามารถทำงานร่วมกันได้ ผลลัพธ์ของธุรกรรมเหล่านั้นยังเป็นเพียงชั่วคราวจนกว่าเอนจินจะตรวจสอบว่าธุรกรรมที่มาก่อนไม่ได้เปลี่ยนแปลงอินพุตที่ธุรกรรมที่มาทีหลังใช้อยู่ ผลลัพธ์ที่ไม่ขัดแย้งกันสามารถยืนยันบันทึกได้ตามลำดับเดิมของบล็อก

หากธุรกรรมที่มาทีหลังอ่านข้อมูลที่ล้าสมัยหรือเขียนขัดแย้งกัน ผลลัพธ์ชั่วคราวของธุรกรรมนั้นจะถูกปฏิเสธ และธุรกรรมจะถูกประมวลผลใหม่หลังจากสถานะก่อนหน้าที่จำเป็นพร้อมใช้งาน เอนจินบางตัวสามารถนำลายเซ็น ไบต์โค้ดที่ถอดรหัสแล้ว สถานะที่แคชไว้ หรืองานอื่นๆ กลับมาใช้ซ้ำระหว่างการประมวลผลใหม่ กลไกสำรองแบบเรียงลำดับช่วยรักษาความคืบหน้าภายใต้ความขัดแย้งที่หนัก วาลิเดเตอร์ทุกตัวต้องใช้กฎการตรวจจับความขัดแย้งและการยืนยันบันทึกแบบดีเทอร์มินิสติก เพื่อให้การจัดตารางแบบขนานไม่สามารถสร้าง state root ที่แตกต่างกันได้

ประโยชน์หลักและการใช้งานของ Parallel EVM มีอะไรบ้าง?

การออกแบบ Parallel EVM ได้ผลดีที่สุดเมื่อบล็อกมีธุรกรรมจำนวนมากที่ทำงานบนสถานะแยกจากกัน โดยมุ่งเพิ่มความสามารถในการประมวลผลของโหนดโดยไม่บังคับให้นักพัฒนา Solidity และผู้ใช้ต้องเข้าสู่สภาพแวดล้อมที่ไม่คุ้นเคย

1. หลายคอร์สามารถประมวลผลงานที่เป็นอิสระต่อกันได้ การโอนและการเรียกใช้สัญญาที่แตะบัญชีหรือสล็อตพื้นที่จัดเก็บต่างกันสามารถทำงานพร้อมกันได้ ใช้ฮาร์ดแวร์ของวาลิเดเตอร์สมัยใหม่ได้เต็มที่กว่าเธรดการประมวลผลเดียว

2. แอปพลิเคชัน EVM ยังคงใช้เครื่องมือที่คุ้นเคยได้ เครือข่ายที่เข้ากันได้สามารถรองรับสัญญา Solidity กระเป๋าเงินแบบ Ethereum อินเทอร์เฟซ JSON-RPC และเฟรมเวิร์กสำหรับการพัฒนา พร้อมกับเปลี่ยนวิธีประมวลผลภายใต้ชั้นแอปพลิเคชัน

3. แอปพลิเคชันที่มีปริมาณการใช้งานสูงได้พื้นที่ประมวลผลเพิ่มขึ้น ระบบชำระเงิน เกม ตลาดซื้อขาย และแอปพลิเคชันโซเชียลที่มีสถานะกระจายตัว อาจประมวลผลบล็อกที่ใหญ่ขึ้นได้เมื่อธุรกรรมของระบบเหล่านั้นสร้างความขัดแย้งจากสถานะที่ใช้ร่วมกันค่อนข้างน้อย

4. การปรับแต่งสามารถโปร่งใสต่อสัญญาได้ เอนจินแบบออปทิมิสติกอย่าง Monad ยืนยันบันทึกผลลัพธ์เสมือนว่าธุรกรรมทำงานแบบเรียงลำดับ นักพัฒนาจึงไม่จำเป็นต้องแยกสัญญาทั่วไปด้วยตนเองเพียงเพื่อเปิดใช้งานการทำงานแบบขนาน

ตัวอย่างเอนจินประมวลผลแบบขนานมีอะไรบ้าง?

โครงการต่างๆ ใช้การประมวลผลแบบขนานกับเครื่องเสมือนและโมเดลสถานะที่แตกต่างกัน ระบบที่ไม่ใช่ EVM ยังคงเป็นข้อมูลอ้างอิงที่มีประโยชน์ เพราะเทคนิคคอนเคอร์เรนซีแบบออปทิมิสติกหลายอย่างได้รับการพัฒนาหรือนำไปใช้ในระบบนอก EVM ก่อน

  • Monad และ Parallel EVM แบบออปทิมิสติก Monad ประมวลผลธุรกรรมที่เข้ากันได้กับ Ethereum แบบพร้อมกัน ติดตามอินพุตของธุรกรรมเหล่านั้น และประมวลผลธุรกรรมซ้ำเมื่อผลลัพธ์ที่ยืนยันบันทึกไว้ก่อนหน้าเปลี่ยนแปลงข้อมูลที่ธุรกรรมนั้นใช้
  • Sei และเอนจินการทำขนาน Sei ใช้การควบคุมคอนเคอร์เรนซีแบบออปทิมิสติก ชุดการเข้าถึงที่ประเมินไว้ การประมวลผลแบบอิง worker การตรวจจับความขัดแย้ง การประมวลผลซ้ำแบบดีเทอร์มินิสติก และกลไกสำรองแบบเรียงลำดับ ในสภาพแวดล้อม EVM ของตน
  • Aptos Block-STM Block-STM เป็นเอนจินประมวลผลแบบขนานที่อิงกับหน่วยความจำทรานแซกชันนัลของซอฟต์แวร์และสถานะหลายเวอร์ชัน แสดงให้เห็นการประมวลผลแบบออปทิมิสติกที่โปร่งใสสำหรับธุรกรรม บล็อกเชนที่เรียงลำดับแล้ว
  • Solana Sealevel Solana ไม่ใช่ EVM แต่รันไทม์ของ Solana แสดงโมเดลที่แตกต่างออกไป ซึ่งธุรกรรมประกาศการเข้าถึงบัญชี เพื่อให้งานที่ไม่ขัดแย้งกันสามารถจัดตารางให้ทำงานแบบขนานได้

ข้อจำกัดและความเสี่ยงของ Parallel EVM มีอะไรบ้าง?

การประมวลผลแบบขนานไม่สามารถขจัดความสัมพันธ์เชิงพึ่งพาที่มีอยู่ในสถานะของแอปพลิเคชันได้ อีกทั้งยังเพิ่มความซับซ้อนด้านการจัดตาราง การตรวจสอบ การแคช ฐานข้อมูล และการประมวลผลซ้ำ ซึ่งต้องนำไปใช้อย่างสม่ำเสมอในทุกโหนด

1. สถานะที่ถูกแย่งใช้ลดผลตอบแทนด้านความเร็ว ธุรกรรมที่ปฏิสัมพันธ์กับพูลสภาพคล่องเดียวกัน ตัวนับส่วนกลาง ค่าออราเคิล หรือสล็อตสัญญายอดนิยมเดียวกันอาจขัดแย้งกันและต้องจัดลำดับหรือประมวลผลซ้ำ

2. การคาดการณ์ล่วงหน้าอาจทำให้สิ้นเปลืองการประมวลผล worker แบบออปทิมิสติกอาจประมวลผลธุรกรรมจนเสร็จโดยใช้อินพุตที่ล้าสมัย แล้วต้องทิ้งผลลัพธ์นั้นไป ทำให้งานของ CPU และหน่วยความจำเพิ่มขึ้นเมื่ออัตราความขัดแย้งสูง

3. ความซับซ้อนในการนำไปใช้ขยายขอบเขตที่บั๊กเกิดขึ้นได้ ตัวจัดตาราง พื้นที่จัดเก็บหลายเวอร์ชัน การตรวจจับความขัดแย้ง การแคช และตรรกะการยืนยันบันทึก ต้องจำลองความหมายของ EVM อย่างแม่นยำทั้งในการ revert การคำนวณแก๊ส การเรียกใช้ และกรณีขอบต่างๆ

4. การทดสอบมาตรฐานอาจไม่สะท้อนภาระงานจริง ปริมาณงานที่พาดหัวข่าวจากธุรกรรมโอนที่เป็นอิสระอาจกล่าวอ้างประสิทธิภาพเกินจริงสำหรับแอปพลิเคชันที่ผู้ใช้จำนวนมากแข่งขันกันแก้ไขตำแหน่งพื้นที่จัดเก็บที่ใช้ร่วมกันเพียงไม่กี่แห่ง

5. ความจุที่สูงขึ้นอาจเพิ่มข้อกำหนดของโหนด เครือข่ายต้องสร้างสมดุลระหว่าง CPU หน่วยความจำ แบนด์วิดท์ของพื้นที่จัดเก็บ การออกแบบฐานข้อมูล และการเติบโตของสถานะ เพื่อให้เป้าหมายด้านประสิทธิภาพไม่ทำให้การตรวจสอบด้วยตนเองเป็นไปไม่ได้ในทางปฏิบัติ

Parallel EVM เปลี่ยนผลลัพธ์ของสมาร์ตคอนแทรกต์หรือไม่?

Parallel EVM ที่นำไปใช้อย่างถูกต้องจะไม่เปลี่ยนผลลัพธ์สุดท้ายที่กำหนดโดยลำดับธุรกรรมของเครือข่าย งานแบบขนานเป็นเพียงชั่วคราว และเอนจินจะยืนยันบันทึกหรือประมวลผลธุรกรรมซ้ำ เพื่อให้สถานะสุดท้ายตรงกับความหมายแบบเรียงลำดับที่กำหนดไว้ ผู้ใช้อาจได้ความจุที่สูงขึ้นหรือความแออัดที่ลดลง แต่สัญญาควรยังคงเห็นผลลัพธ์ที่เรียงลำดับเหมือนเดิม หลักประกันนี้ทำให้การจัดการความขัดแย้งแบบดีเทอร์มินิสติกสำคัญกว่าการเพียงแค่รันหลายเธรด

แนวคิดที่เกี่ยวข้อง

1. Ethereum Virtual Machine คืออะไร?

2. สมาร์ตคอนแทรกต์คืออะไร?

3. แก๊สคืออะไร?

4. ความสามารถในการขยายขนาดคืออะไร?

อ่านเพิ่มเติม

1. Ethereum Virtual Machine: เอนจินขับเคลื่อนสมาร์ตคอนแทรกต์และแอปพลิเคชันแบบกระจายศูนย์

2. สมาร์ตคอนแทรกต์คืออะไร? รากฐานของโลกบล็อกเชน

3. อธิบายค่าธรรมเนียมแก๊สของ Ethereum: แก๊ส ETH คืออะไร และ Gwei ทำงานอย่างไร?

4. สิ่งใดดีกว่า: Solana หรือ Ethereum? การเปรียบเทียบบล็อกเชนฉบับครอบคลุมในปี 2026

5. Sui กับ Sei: L1 แบบขนานตัวใดครองตลาดในปี 2026?