แอปเปิล เคยออกประกาศในเรื่องนี้ครั้งหนึ่ง แต่ในครั้งนั้นให้มีผลเฉพาะกับแอพพลิเคชันใหม่ที่จะส่งเข้ามาตรวจสอบ และวันนี้แอปเปิลก็ได้ออกประกาศในเรื่องนี้เพิ่มเติมเป็นที่เรียบร้อยแล้ว คือตั้งแต่วันที่ 1 มิถุนายนปีหน้า ทุกแอพพลิเคชันที่จะส่งอัพเดตเข้ามา ต้องคอมไพล์แบบ 64 บิตมาด้วยเสมอ
แอปเปิลระบุว่าการทำให้แอพพลิเคชันรองรับ 64 บิตนั้น สามารถทำได้ง่ายๆ โดยการปรับค่า Standard architectures ในโปรเจคให้กลายเป็นค่าตั้งต้น แล้วจากนั้น Xcode จะจัดการคอมไพล์แอพพลิเคชันออกมาเป็นแบบ 32 บิต และ 64 บิตในไฟล์เดียวครับ
ที่มา - Apple Developer
Comments
คู่แข่งเหนื่อยอีกครั้ง วิ่งตามยุค 64 บิต อ้างอิงแรมได้แทบจะไม่จำกัดแรมจริงๆ มีน้อยๆ ก็ได้ ทำพาร์ติชั่นสวอป เอาเนื้อที่ดิสก์มาทำแรมได้อีก
ไม่มีนัยยะความน่ากลัวเลยครับ ในเมื่อผู้ซื้อกลุ่มมองความคุ้ม ยังไงก็ดูสเป็กเป็นหลักเค้าไม่มามองว่าสามารถเรียกพื้นที่จัดเก็บมาเป็นแรมปลอมๆ หรอกครับ ตามเทคนิคก็ถูกเรียกใช้งานได้ช้ากว่าอีก
เดี๋ยวนี้ แรม-รอม เป็นโซลิดสเตท แล้วทั้งคู่
เรื่องความเร็วแทบไม่ต่างกันเลยข้อนี้ (ช้ากว่ากันน้อยมากๆ)เอาสวอปพาร์ติชั่นมาทำแคชหนัง-เพลง ได้สบายๆทั้งเรื่องเต็มๆ เลย
แถมประมวลผลกราฟิก 64 บิต เร็วปรื๊ด ภาพสวย ไม่สะดุด เสียงเซอร์ราวด์ไฮไฟ
หน่วยความจำแบบแฟลชที่ใช้ในโทรศัพท์-แท็บเล็ตนี่เท่าที่ผมเจอมันช้ากว่า HDD อีกนะครับ ยังห่างไกลกับ RAM อีกเยอะ
ถ้ามันช้ากว่ากันน้อยมากๆ นี่คงจับเอาหน่วยความจำแบบแฟลชราคาถูกที่ใช้กันอยู่นี่ไปทำแรมกันหมดแล้วล่ะครับ
32 บิตนี่มันอ้างแอดเดรสได้ไม่เกิน 4 GBจึงยังไม่มีความจำเป็นต้องทำ พาร์ติชั่นสวอป ช่วย จึงแลดูไม่แพร่หลาย
ถ้าดีขนาดนั้นแล้วทำไมเครื่องคอม 64 บิต เรายังต้องอัดแรมกันเยอะๆ 8-16 GB อยู่อีกล่ะครับ
ว่าแต่ พอทราบไหมครับเนี่ยว่าเราเข้าถึงข้อมูลในแรม, SSD, หน่วยความจำแบบแฟลช, HDD ได้ด้วยความเร็วประมาณเท่าไหร่บ้าง?
เทียบ Peak Transfer Rate นะครับ
แถม* eMMC 400MB/s
ทั้งนี้ Throughput ก็คงทำได้ไม่ค่อยถึงกันน่ะนะ (พอดี Anand ล่มเลยเปิดไปดูไม่ได้ 555) ก็ตีไปราว 1/2 หรือ 1/3 ก็ได้ครับ
eMMC ในเครื่องผมนี่ทดสอบมาไม่เคยเฉียด 100 MB/s เลยครับ orz อืดได้ใจ ส่วนมากไม่ถึง 50 MB/s ด้วย
โห..เดี๋ยวนี้ HDD มันเร็วเท่า SSD แล้วเหรอครับเนี่ย?คอมเก่าผมใช้ SSD ได้ความเร็วแค่ 400MB/s เอง (☍﹏⁰)°。
คิดที่ peak speed ในทางทฤษฎี SATA3 น่ะครับ มีแคชช่วยบ้างอะไรบ้าง :p
DDR3-1600 (ชื่อเต็มคือ DDR3 PC3-12800) single channel peak จะอยู่ที่ 12,800 MB/s นะครับ > <" ส่วนถ้าเป็น dual channel ก็ประมาณ นี้ ครับ
แต่บน SoC ใช้ LPDDR3 ซึ่งมี peak เท่ากันครับ แต่ใช้จริงไม่น่าจะถึงเหมือน PC เพราะ mem controller ไม่น่าจะเร็วพอ
HDD กับ eMMC นี่จริงๆทำได้น้อยกว่า bus spec มากครับ
ปัญหาหลักอีกอย่างนอกจาก bandwidth แล้วคือ latency ครับ ทั้งจากตัว NAND เองที่เยอะกว่ามาก(NAND=~ 1ms /DDR3=~10ns) และจาก page-swap r/w
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
โอ้ ขอบคุณที่แก้ครับ ผมดูตารางผิดช่อง 555
ส่วนตัวผมคิดว่าเทียบแค่ peak speed ก็น่าจะเห็นความต่างค่อนข้างชัดแล้วล่ะครับ (และก็มันหาง่ายด้วย เพราะอยู่ในสเปค) ถ้าจะดู throughput นี่คงต้องดู benchmark แยกกัน ซึ่งผมไม่มีเวลาค้น (และตอนนั้น Anand ล่มพอดี สงสัยคนไม่พอใจที่ขายกิจการ 55)
ส่วนอื่น ๆ ผมเห็นด้วยทั้งหมดครับ
เมมโมรี คอนโทรลเลอร์ ก็มีหลายซิปเซ็ต
ของ ARM อ่านจากที่นี่
http://infocenter.arm.com/help/topic/com.arm.doc.100000_0000_00_en/corelink_dmc_520_trm_100000_0000_00_en.pdf
เสริมอีกนิดว่า หน่วยความจำภายในมือถือส่วนใหญ่เป็นแบบ eMMC ก็คือ MMC ที่ฝังลงไปในบอร์ด มีความเร็วพอ ๆ กับ MMC ธรรมดา (แต่ตอนนี้คงไม่มีใครทำขายแล้วล่ะ)
+1 ครับ มองความคุ้มมองสเป็กเป็นหลักครับ
คนทั่วไปไม่เข้าใจความแตกต่างของ 32 bit กับ 64 bit ด้วยซ้ำไปครับ นอกจากรู้ว่าเลขมันเยอะกว่า
การมานั่งเถียงเรื่อง 32 กับ 64 bit นี่ ต้องเป็น geek ในระดับนึงเท่านั้น
http://www.intel.com/content/dam/doc/datasheet/5100-memory-controller-hub-chipset-datasheet.pdf
อ่านดูนะครับ ใครๆ ก็เข้าใจได้ เอกสารเกี่ยวกับการควบคุมหน่วยความจำ
อันนี้คือต้องการจะสื่ออะไรครับ? รวมถึง reply นี้ด้วย
จะสื่อว่า NAND มันช้ากว่า DRAM นิดเดียวหรือเปล่าครับ?
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
แนนกับดีแรม มันต่างกัน 3 เท่าตามสเปค
แต่ที่มันต่างกันนิดเดียวเพราะตัว เมโมรีเมนเนจเมนต์เมโมรีเมเนจเม้นต์ มี 2ส่วนหรือ 2 แบบอีกนะ ใช้ซิปเซ็ตแยกกันสองชุด
เครื่องที่ขายทั่วๆ ไป ตอนนี้ รอมแรม เร็วพอๆ กัน
พอจะมีข้อมูลอ้างอิงให้ศึกษาบ้างไหมครับ ผมหาไม่เจอ
ไม่ครับ NAND กับ DRAM ต่างกัน 32 เท่า(12,8000/400) ในเรื่อง memory bandwidth และ 100,000 เท่าในเรื่อง latency
(กรณี bandwidth คิดจาก max bandwidth ของ eMMC 5.0@200MHz ถ้าคิดจากความเป็นจริงในปัจจุบันจะอยู่ที่ไม่เกิน 200MB/s และถ้าใช้ controller แบบ eMMC 4.5.1 ก็จะ ช้าลงไปอีก ส่วน RAM บน smartphone จะอยู่ที่ 7-9GB/s@single channel ครับ)
การมี eMMC controller กับ memory controller แยกกัน เป็นการแยกหน้าที่การทำงานอยู่แล้ว(ไม่สามารถเอา memory controller ที่ใช้ควบคุม volatile-RAM ไปควบคุม non-volitate-NAND และกลับกัน) และการมีแยกกันมันก็ไม่ได้ทำให้ eMMC เร็วขึ้นพอๆกับ RAM ครับ
ก็เหมือนกับมีแอร์อยู่ การซื้อทีวี 240Hz มาก็ไม่ได้ทำให้แอร์เย็นเร็วขึ้นครับ เพราะมันไม่ใช่อุปกรณ์ชนิดเดียวกัน ทำงานคนละส่วนและส่วนควบคุมคนละส่วนครับ
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
latency ก็ทำ multithreding รอ แค่นั้นเอง
ผมไม่เข้าใจครับ multi-threading ช่วยยังไงเหรอครับ
Russia is just nazi who accuse the others for being nazi.someone once said : ผมก็ด่าของผมอยู่นะ :)
เห็นคำตอบทีแรก ผมช็อคเลยครับ O_o สมองประมวลผลตามไม่ทันแล้ว (อาจจะเพราะผมนั่งปั่นงานต่อเนื่องมานานเกินไปก็ได้)
รอคำอธิบายเหมือนกันครับว่าใช้ multi-threading นี่จะมาช่วยให้ขึ้นไปเทียบเท่าแรมได้ยังไง
สงสัยว่าการที่ไฟล์เดียวรองรับทั้ง 32/64บิต มันทำให้ขนาดแอพโตขึ้นหรือเปล่า
โตแต่ไบนารี่ครับ ซึ่งเอาจริงๆแล้วที่หนักสุดมันคือกราฟฟิกต์ วีดีโอ เสียงประกอบตัวโค้ดมีขนาดเล็กมากๆ
ขอบคุณครับ
อยากจะบอกว่า โปรแกรมที่ใช้ประจำ ไม่มีอันไหนต้องโหลด ใน Appstore เลย
เช่น
Google Chrome
Firefox
uTorrent
Steam
CleanMyMac
MPlayerX(เวอรชั่นล่าสุด) (เหมือนมีปัญหาด้านข้อตกลงอะไรซักอย่างอัพเวอร์ล่าสุดไม่ได้ ต้องโหลดเอาหน้าเว็บ)
ข่าวน่าจะหมายถึง iOS มากกว่านะครับ ฝั่ง Mac(OS X) เนี่ยไป 64 นานแล้ว