03 พ.ค. 2566·อ่าน 1 นาที

Python 3.12 ปฏิวัติประสิทธิภาพและประสิทธิภาพของ Python

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

Python 3.12 ปฏิวัติประสิทธิภาพและประสิทธิภาพของ Python

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

Mark Shannon ผู้สนับสนุนหลักของ Python ที่ Microsoft และวิทยากรคนอื่น ๆ ที่ PyCon 2023 ให้ความกระจ่างเกี่ยวกับความคิดริเริ่มมากมายที่มีเป้าหมายเพื่อลดการใช้หน่วยความจำของ Python เร่งล่าม และปรับคอมไพเลอร์ให้เหมาะสม ตัวอย่างเช่น ส่วนหัวของออบเจกต์ของ Python ลดลงจาก 208 ไบต์เป็น 96 ไบต์ ซึ่งหมายความว่าสามารถเก็บอ็อบเจ็กต์ได้มากขึ้นในหน่วยความจำในขณะที่ปรับปรุงพื้นที่แคช

Adaptive Specialization เป็นอีกหนึ่งการพัฒนาที่สำคัญใน Python 3.12 จากข้อมูลของ Brandt Bucher ผู้พัฒนา Python หลัก คำแนะนำแบบปรับ bytecodes ใหม่ของ Python 3.11 จะได้รับการปรับปรุงเพิ่มเติมในเวอร์ชันล่าสุด คำแนะนำเหล่านี้สามารถแทนที่เวอร์ชันเฉพาะสำหรับประเภท Python ในระหว่างรันไทม์ ซึ่งจะทำให้มีประสิทธิภาพการทำงานของล่ามและเร่งกระบวนการทั้งหมด การปรับปรุงใน Python 3.12 รวมถึง opcodes เฉพาะทางแบบปรับตัวเพิ่มเติมและ opcode พิเศษแบบง่าย

การทำงานพร้อมกันเป็นปัญหาที่มีมายาวนานกับ Python และ Python 3.12 มีเป้าหมายที่จะจัดการกับความท้าทายนี้ด้วยการแนะนำตัวแปลย่อยและ Global Interpreter Lock (GIL) ต่อตัวแปล การพูดคุยของผู้พัฒนา Core python Eric Snow ได้สำรวจโซลูชันนี้ ซึ่งส่งเสริมการใช้งานหลายคอร์ที่ดีขึ้นโดยมีการแลกเปลี่ยนน้อยลงที่กำหนดโดยเธรด, async หรือการประมวลผลหลายตัว แทนที่จะลบ GIL กลไกล่ามย่อยช่วยให้ล่ามหลายตัวทำงานร่วมกันภายในกระบวนการเดียว โดยที่ล่ามแต่ละตัวมี GIL ของตัวเอง ยิ่งไปกว่านั้น Python 3.12 จะแนะนำโมดูลขั้นต่ำในไลบรารีมาตรฐานที่เรียกว่า ล่าม ทำให้โปรแกรมเมอร์สามารถใช้ล่ามย่อยได้อย่างมีประสิทธิภาพ

ความก้าวหน้าดังกล่าวไม่เพียงแต่ช่วยเร่งประสิทธิภาพของ Python เท่านั้น แต่ยังช่วยพิสูจน์อนาคตภายในของภาษาในอีกไม่กี่ปีข้างหน้า หนึ่งในปัญหาที่กล่าวถึงในเรื่องนี้คือการล้างข้อมูลและการสรุปของ C APIs จำนวนมากของ CPython ที่เปิดเผยโดย Victor Stinner ผู้พัฒนา Python หลัก การรักษา API สาธารณะให้เป็นส่วนตัวช่วยให้มั่นใจได้ว่ามีปฏิสัมพันธ์โดยตรงกับ CPython ภายในน้อยลง และลดการพึ่งพาการเปลี่ยนแปลงเวอร์ชันที่อาจเกิดขึ้น HPy โปรเจกต์ของบุคคลที่สามก็ถือกำเนิดขึ้นเช่นกัน ซึ่งนำเสนอ C API ที่เสถียร มีประสิทธิภาพ และเป็นนามธรรมมากขึ้นสำหรับ Python ในเวอร์ชันต่าง ๆ และโปรเจกต์ที่ให้ประโยชน์เช่น NumPy และ ultrajson

การปรับปรุงที่ก้าวล้ำเหล่านี้ใน Python 3.12 ไม่เพียงรับประกันการปรับใช้ที่รวดเร็วขึ้น ประหยัดหน่วยความจำ และปรับเปลี่ยนได้เท่านั้น แต่ยังเปิดประตูสู่การปรับปรุงที่ไม่เคยมีมาก่อนอีกด้วย การเปิดตัวสามารถมีอิทธิพลอย่างมากต่อภูมิทัศน์ที่หลากหลายของแพลตฟอร์มการพัฒนาและภาษาการเขียนโปรแกรม รวมถึง AppMaster platform which enables easy creation of web, mobile, and backend applications through no-code solutions. Embracing an evolving future, Python is set to revolutionize its performance and efficiency, delivering substantial benefits to developers everywhere.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started