Sự kiện iPhone X và iPhone 8 không nằm ngoài một nguyên tắc của giới công nghệ: cứ có smartphone đầu bảng mới là phải có so sánh cấu hình với các đối thủ cạnh tranh. Năm nay, với cú nhảy vọt của 3 mẫu iPhone mới lên chip 6 nhân, bảng so sánh cấu hình giữa iPhone X, iPhone 8 với Galaxy Note8, LG V30 hay các mẫu đầu bảng Android khác lại càng trở nên hấp dẫn.
Nhưng tôi phải nói thẳng với bạn: đó là loại so sánh mang tính chất "lừa phỉnh". Các con số được đặt ra khiến bạn lầm tưởng rằng bạn đang biết rất rõ smartphone nào mạnh hơn smartphone nào. Thực tế thì không đơn giản như vậy.
Trên tất cả, cái sai lớn nhất khi đem so sánh cấu hình của iPhone và các mẫu điện thoại Android nằm ở chỗ các phép so sánh này bỏ qua vai trò của hệ điều hành. Bất kỳ một ai từng đọc qua các cuốn sách dạng "máy vi tính căn bản" có lẽ đều biết rằng hệ điều hành (và các driver) là tầng phần mềm duy nhất được truy cập trực tiếp vào phần cứng. Tất cả các tầng ứng dụng/dịch vụ đều phải đi qua hệ điều hành: không có chuyện ứng dụng Word của bạn gọi thẳng đến bàn phím hay máy in.
Trên di động, với các loại ứng dụng khác, nguyên tắc này giữ nguyên. Nói cách khác, khi bạn bỏ qua vai trò của hệ điều hành khi so sánh hiệu năng, bạn đã bỏ qua phần cốt lõi nhất đối với trải nghiệm ứng dụng của người dùng.
Trong cuộc chiến cốt lõi này, Android buộc phải thua cuộc. Bởi Android là hệ điều hành dành cho đủ loại phần cứng. Nhiều loại phần cứng có nghĩa rằng Android phải mang nhiều lớp trừu tượng (abstract) hơn iOS; mỗi phần cứng của Android cũng không thể có mức độ tối ưu như iPhone và iPad.
Nội tại cách hoạt động của các linh kiện cũng không đơn giản.
Hãy nói về RAM trước tiên. Càng nhiều RAM thì càng lưu được nhiều vào bộ nhớ đệm, điều đó là chính xác. Nhưng điều đó không có nghĩa rằng thông số RAM là thứ duy nhất quyết định đến tốc độ tải app từ bộ nhớ lên màn hình chính. Load app từ ổ cứng/bộ nhớ trong lên RAM, từ RAM vào các bộ nhớ đệm và vào register của CPU thực chất là các quá trình cực kỳ phức tạp do các kỹ sư cấp cao thiết kế. Tôi dám chắc với bạn rằng phần lớn các nhà phát triển iOS hay Android đều không đủ hiểu biết về quá trình này (dù thực tế là họ không nên biết).
Chưa kể, chẳng nhà sản xuất nào hé lộ tốc độ chip flash trên sản phẩm của họ cả. Bạn hiểu RAM là bộ nhớ "đệm" chứ?
Chuyện những con chip cũng vậy. Nếu cùng là CPU Intel, cùng chạy Windows thì trong phần lớn các trường hợp, nhân càng nhiều, xung càng cao sẽ đem lại hiệu năng mạnh mẽ hơn nữa. Song, CPU không phải là một bộ phận đơn giản – nếu đơn giản thì ngành chip đã không bị gọi là ngành công nghiệp khắc nghiệt nhất thế giới. Có lẽ 90% người dùng chưa từng nghe tới khái niệm "register", cũng hiểu cơ chế hoạt động của cache, chẳng phân tích được sự khác biệt giữa 32bit và 64-bit, cũng chẳng lý giải được vai trò của kích cỡ die đối với hiệu năng chip.
Nhưng các nhà sản xuất, các công ty marketing thì gói gọn toàn mọi thứ vào những con số đứng trước GHz và GB.
Những người có hiểu biết về kỹ thuật phần mềm đều sẽ hiểu rằng họ không cần quan tâm đến những cơ chế phức tạp của phần cứng. Đối với những gì mà Apple hay Google + Samsung/HTC/Xiaomi... mang lại cho họ, họ chỉ có cách duy nhất là... chấp nhận sự thật và đảm bảo cho phần việc của họ được tốt nhất. Họ chỉ có thể biết và chấp nhận rằng hiệu năng nhân đơn của iPhone cao hơn Galaxy, rằng Galaxy có nhiều nhân hơn iPhone. Tất cả những gì họ có thể làm là tối ưu tốt nhất, kiểm thử kỹ lưỡng nhất cho các ứng dụng mà họ viết trên cái nền được Apple và Google cung cấp.
Apple hiểu rất rõ điều này, bởi vậy họ chọn hướng đi có lợi nhất cho các nhà phát triển. Cái lợi đầu tiên nằm ở số lượng tùy chọn phần cứng giới hạn để đảm bảo tối ưu hệ điều hành và giảm test matrix (quy định khối lượng kiểm thử) cho ứng dụng. Lợi ích thứ hai nằm ở nhân đơn: với ứng dụng dành cho người dùng cuối, hiệu năng nhân đơn quan trọng hơn hiệu năng đa nhân. Người lập trình các ứng dụng dành cho người dùng cuối không nên bận tâm về chuyện phân luồng hay đặt ưu tiên luồng – chúng rối rắm và rất dễ gây ra lỗi.
Còn nếu bạn có bận tâm về chuyện phân luồng: Objective-C quản lý luồng tốt hơn hẳn Java trên Android.
Đến năm nay thì Apple đột ngột tăng số nhân cho CPU và cũng tự thâu tóm phần thiết kế GPU về riêng mình. Apple có lý do rất thực tế để làm như vậy: iOS 11 đi kèm với nền tảng Core ML phục vụ trực tiếp cho ứng dụng trên thiết bị và ARKit cho phép tạo ra nền tảng thực tại hỗ trợ phổ biến, tiện dụng nhất thế giới. Đây là các lĩnh vực điện toán cá nhân đầu tiên thực sự đòi hỏi xử lý nhiều nhân: với các loại AI truyền thống, người làm phần mềm hiểu bộ não nên đặt ở đám mây chứ không nên "nhét" vào điện thoại làm gì cả.
Không dừng lại ở đó, Apple còn tiến một bước rất xa trong xử lý chip: cho phép kích hoạt một số lượng nhân bất kỳ thay vì đi theo big.LITTLE của ARM, vốn chỉ kích hoạt chỉ 1 trong 2 bộ nhân (thực tế, các nhà sản xuất Android lại thường... ăn gian với big.LITTLE khi phát hiện có benchmark).
Khi Apple làm vậy, Android đã chẳng còn chút lợi thế nào cả. Benchmark Geekbench rò rỉ cho thấy hiệu năng nhân đơn của A11 Bionic cao... gấp đôi Snapdragon 835 trên Galaxy S8. Hiệu năng đa nhân của A11 Bionic cũng đã vượt mặt Snapdragon 835 tới 2000 điểm. Sự áp đảo này hiển nhiên do cả phần cứng và phần mềm tạo ra, nhưng các nhà phát triển đơn giản sẽ hiểu rằng ứng dụng Android không thể bì với ứng dụng iOS về hiệu năng được.
Và lên đến tầng trải nghiệm cuối cùng và quan trọng nhất – trải nghiệm người dùng, ứng dụng iOS luôn vượt mặt ứng dụng Android về tốc độ tải. Đây là loại "sức mạnh" duy nhất mà bạn và tôi có thể cảm nhận được. Việc tranh cãi về chip, về RAM trong khi chúng ta không thực sự hiểu rõ ràng về chúng; việc đưa ra những lời biện hộ là hoàn toàn vô nghĩa.
Người làm kỹ thuật hiểu rằng mình sẽ chỉ lo việc của mình chứ không lo đến module, hàm... đã đóng gói của người khác. Người dùng công nghệ bởi vậy cũng không nên so sánh bất cứ thứ gì khác ngoại trừ chính tốc độ/chất lượng trải nghiệm mà họ nhận được.
Bởi so sánh cấu hình để gán với tốc độ trải nghiệm thật giữa iOS và Android là một phép so sánh sai lầm. Chúng góp phần tạo ra một bộ mặt không trung thực và xấu xí cho ngành hi-tech: thay vì tập trung vào những yếu tố có thể thực sự cải thiện chất lượng người dùng (ví dụ như cải thiện code, nghiên cứu thêm phần cứng/phần mềm...) thì nhà sản xuất lại tìm cách để tăng vài trăm MHz hay nhồi nhét thêm vài nhân vào CPU để "tỏ ra" vượt trội trước mắt người dùng.
Sự chênh lệnh về giá của 2 dòng chip tầm trung và tầm thấp, giữa thanh RAM 2GB và 4GB chắc chắn là không đến 30 USD. Đầu tư vào tối ưu sản phẩm thì khác: vài triệu đến vài tỷ USD, chưa kể các vấn đề quản lý, vấn đề con người... Hãy ngưng bị "lóa mắt" bởi các bảng cấu hình. Hãy dẹp ngay chúng đi và đi đến cửa hàng để tự tay thử nghiệm chiếc điện thoại trong mơ của bạn.
Theo GenK