มีการศึกษาเปรียบเทียบจำนวนมากและมีให้ทางออนไลน์เมื่อพูดถึงประสิทธิภาพรันไทม์ของแอพพลิเคชั่นที่สร้างขึ้นโดยใช้ภาษาเดียวหรืออีกภาษาหนึ่ง บางคนขับเคลื่อนโดย บริษัท นักวิชาการบางคนรายงานการทดลองส่วนตัวบางอย่าง
นอกจากนี้เรายังได้รับส่วนแบ่งที่ดีจากการศึกษาเปรียบเทียบผลข้างเคียงของภาษาการเขียนโปรแกรมและการใช้เครื่องมือเช่น:
- สร้างครั้ง
- โอกาสในการตรวจจับข้อผิดพลาดหลังการผลิต
- พลังการแสดงออก
- ฯลฯ ...
อย่างไรก็ตามเมื่อเร็ว ๆ นี้ฉันได้รับความเสียหายจากการใช้หน่วยความจำของโปรแกรมของฉันมากกว่าสิ่งอื่นใด นี่อาจมาจากความจริงที่ว่าในขณะที่กฎของมัวร์อยู่ข้างเราเพื่อให้ได้ประสิทธิภาพที่ดิบเราได้ตระหนักว่าคอขวดอื่น ๆ และฉันมักจะไม่อัปเดตฮาร์ดแวร์ของฉันทุกครั้งและฉันมี "เก่า" บางอย่าง (อ่าน 2005-2006 3.6GHz Pentium 4 พร้อม 4GB of RAM) ซึ่งปัจจุบันยากที่จะถูกใช้งานสำหรับแอปพลิเคชันขนาดใหญ่ที่ไม่มี ทำให้ฉันต้องเจอกับปัญหาอย่างมากในการบีบน้ำผลไม้ออกเล็กน้อย (ตัวเลือกของ OS, UI, tweaking ของบริการและ daemons ทางเลือกของแอปพลิเคชันที่จะใช้สำหรับงานหรืออื่น ... ) ค่อนข้างตรงไปตรงมาบางครั้งฉันก็โกรธtop
หรือprocexp
ร้องไห้เมื่อเห็นความทรงจำที่ใช้โดยโปรแกรมที่ไร้เดียงสาที่สุด
ฉันสามารถพูดเรื่องนี้ได้โดยพยายามผลักดันในทิศทางที่กล่าวข้างต้นและพยายาม จำกัด ตัวเองและโปรแกรมที่ฉันใช้ (ฉันมีความรักสำหรับโปรแกรม cli ด้วยเหตุนี้ฉันเดา) แต่ฉันก็อดคิดไม่ได้ บางทีเราอาจทำผิด
เครื่องมือที่ทันสมัยสำหรับความต้องการที่ทันสมัย
แน่นอนว่าภาษาระดับสูงนั้นดีกว่าและพิสูจน์ให้เห็นถึงคุณค่าของการเสียน้ำหนัก ตัวเลือกการออกแบบบางอย่างถูกสร้างขึ้นมาเพื่อเหตุผลที่ดี (หรือมีเจตนาดี) ในเวลานั้นในหลาย ๆ เครื่องมือ ไลบรารี่ที่ใช้ร่วมกัน, โมเดลหน่วยความจำ, โปรเซสเซอร์ล่วงหน้า, ระบบพิมพ์ ฯลฯ ... แต่บางอันอาจทำงานได้ดีกว่าอุปกรณ์อื่น ๆ ด้วยฮาร์ดแวร์ที่ทันสมัยของเราและฉันอยากรู้อยากเห็นการศึกษาที่จริงจังในเรื่องนี้
ดังนั้นคำถามของฉันคือมีจี้ในเกม Benchmarksและอื่น ๆ ที่เน้นการเปรียบเทียบการใช้หน่วยความจำรันไทม์พื้นฐานของภาษาหรือไม่
และยิ่งกว่านั้นมีการศึกษาบางอย่างที่อ้างอิงข้ามสิ่งนี้กับพารามิเตอร์อื่น ๆ (คล้ายกับสิ่งที่บทความนี้ทำเช่นสำหรับเกณฑ์อื่น ๆ เช่นกันโดยอิงตามเกณฑ์มาตรฐานของเกม )
How much memory consumption makes you weep?
30MB สำหรับแท็บ Chrome ที่ไม่ใช้งานและไม่มีส่วนขยาย 100MB สำหรับ CCC ของ ATI หรือแม้แต่ 11MB สำหรับปลั๊กอิน googletalk ที่ไม่ใช้งานหรือ 23MB สำหรับไดรเวอร์เครื่องพิมพ์ที่ไม่ใช้งาน สิ่งเหล่านี้และอีกมากมาย ตัวอย่างโครเมี่ยมค่อนข้างออกจากสวนสาธารณะเพราะเป็นตัวอย่างที่ซับซ้อนกว่า แต่อีกตัวอย่างหนึ่งทำให้ฉันประหลาดใจมาก