• Thứ Ba, 05/10/2010 13:35 (GMT+7)
    Lập trình ứng dụng cho thiết bị di động

    Thách thức từ xử lý đa nhân

    Song Du Ca
    Việc phát triển ứng dụng cho máy tính bảng và điện thoại thông minh sẽ trở nên thách thức hơn khi thế hệ bộ xử lý đa nhân trở nên đại trà trên các thiết bị di động.

    Tại hội nghị Linley Tech Processor diễn ra vào 2 ngày 27/9 và 28/9/2010 ở San Joe (Mỹ), nhiều chuyên gia đồng tình với ý kiến cho rằng việc phát triển ứng dụng cho các thiết bị di động (TBDĐ) như máy tính bảng (tablet) và điện thoại thông minh (ĐTTM) sẽ thách thức hơn khi khả năng tăng tốc của bộ xử lý và các thành phần phần cứng khác được bổ sung vào chip sử dụng trong TBDĐ.

    Các nhà sản xuất chip đang đi theo hướng này bởi vì trước hết, tính hiệu quả về điện năng sẽ giúp đẩy mạnh hiệu năng của các ứng dụng chạy trên máy tính bảng hay ĐTTM. Hầu hết TBDĐ hiện nay chỉ sử dụng 1 nhân BXL trên 1 con chip, tuy nhiên máy tính bảng và ĐTTM sử dụng chip 2 hay 3 nhân được hy vọng sẽ sớm có mặt trong năm tới. 

    Theo ông Linley Gwennap, Chủ tịch kiêm phân tích viên chính tại Linley Group, điều đó có nghĩa là các ứng dụng phải được viết lại để khai thác ưu điểm của những thành phần phần cứng mới. "Nhiều việc cần được thực hiện bên trong ứng dụng/phần mềm để tận dụng tốt hơn hiệu năng xử lý của các chip đa nhân, và đó có thể là một thách thức", ông Gwennap cho biết.

    "Những gì chúng ta trông đợi ở ĐTDĐ là các ứng dụng cần được thay đổi để sử dụng BXL thứ 2", Gwennap tiếp lời, "Việc này cần chút thời gian trước khi các ứng dụng sẵn sàng". Tuy nhiên, đó lại là thách thức mà cộng đồng lập trình viên dường như mong muốn đối mặt. Số lượng ĐTTM và máy tính bảng bán ra đang tăng nhanh và nhiều hãng đang gấp rút hoàn thành những ứng dụng mới được thiết kế để đón đầu nhu cầu của thị trường đầy sức nóng này.

    Các mẫu ĐTTM mới như Apple iPhone 4, Motorola Droid X và HTC Evo 4G đều trang bị BXL nhanh nhất từ trước đến giờ, hiện ở mức xung nhịp 1GHz. Trong khi đó, máy tính bảng hiện được dẫn dắt bởi Apple iPad nhưng con át chủ bài của "quả táo" trong năm 2010 này đang gặp phải sự thách thức đáng kể từ sản phẩm Samsung Galaxy Tab cũng như Toshiba Folio 100, và gần đây nhất là PlayBook từ Research in Motion - tất cả sử dụng BXL tốc độ 1GHz.

    Bên cạnh mục tiêu xử lý đa nhiệm tương tự trên máy tính cá nhân, TBDĐ đang trong quá trình dịch chuyển từ các tính năng thoại và tin nhắn cơ bản sang các dịch vụ liên quan nhiều hơn đến dữ liệu, và đó cũng là lý do các ứng dụng cần duy trì tính kết nối lâu hơn - bà Kannan Parthasarathy, kỹ sư tại hãng Byte Mobile nhận định. "Khởi đầu với việc lướt web, bây giờ người dùng bắt đầu xem phim trên TBDĐ", bà Kannan nói.

    Các ứng dụng liên quan đến mạng xã hội cũng có nhu cầu kết nối liên tục và điều này đòi hỏi nhiều điện năng hơn cũng như cải thiện khả năng kết nối mạng. Để tiết kiệm nguồn pin, các nhà phát triển cần hiểu rõ các ứng dụng di động, dịch vụ và kết nối, đồng thời phân bổ các tác vụ cho từng nhân và luồng xử lý - đại loại như xử lý song song trong lập trình hay xử lý đa luồng trong máy tính cá nhân.

    Các hệ điều hành dành cho nền tảng di động như Android của Google đã gần như sẵn sàng hỗ trợ 2 BXL ở mức hệ điều hành, từ đó bước đầu giảm sự căng thẳng cho các lập trình viên. Tuy nhiên, theo ông Gwennap, khi chip trên TBDĐ chứa nhiều nhân xử lý hơn thì sẽ dẫn đến sự phức tạp trong việc triển khai, thực thi đồng thời các tác vụ này trên nhiều nhân. Được biết, Qualcomm và Nvidia từng công bố các chip với 2 BXL dựa trên thiết kế ARM dành cho ĐTTM và máy tính bảng, trong khi đó hãng Marvell cũng đã trình làng 1 chip với 3 nhân xử lý. Nhìn xa hơn, trong tương lai, số nhân trên 1 chip di động sẽ tăng lên cùng thời gian khi mà các TBDĐ đòi hỏi hiệu năng cao hơn trong khi vẫn có thể tiết kiệm điện năng.

    “Khi đạt đến giới hạn 4 nhân xử lý…, bạn thực sự phải bắt đầu biết cách giải phóng hệ điều hành”, Gwennap cho biết. Các chip dựa trên thiết kế ARM cũng có khả năng tắt nhân xử lý để tiết kiệm điện năng. Tuỳ thuộc vào cấu trúc của chip, nhiều thay đổi ở cấp hệ điều hành và ứng dụng cũng sẽ cần có trên máy tính bảng và ĐTTM để khai thác tính năng tiết kiệm năng lượng. “Vấn đề là cách bạn điều chỉnh một BXL Marvell sẽ khác cách bạn điều chỉnh 1 BXL Qualcomm. Các hệ điều hành đang phải tạo ra các mô-đun riêng biệt cho mỗi loại điện thoại. Mọi thứ đang bắt đầu trở nên phức tạp”, Gwennap nhìn nhận.

    Ngoài BXL, các nhân xử lý được thiết kế chuyên biệt và các bộ tăng tốc phần cứng đã được bổ sung vào các chip trên TBDĐ cũng sẽ giúp tăng hiệu năng và giảm lượng điện năng tiêu thụ. Tuy nhiên, những nhân xử lý chuyên biệt dạng này lại làm giảm tính linh hoạt của ứng dụng bởi vì chúng yêu cầu các hàm API riêng biệt để đáp ứng từng ứng dụng cụ thể. “Nhược điểm của bộ tăng tốc phần cứng là chúng giảm tính linh hoạt của ứng dụng”, Gwennap cho biết.

    Thực tế cho thấy, vài ứng dụng như dựng phim đã được phát triển cho các BXL đa nhân và các bộ tăng tốc phần cứng chuyên biệt như chip xử lý đồ hoạ. Nvidia cũng đã bổ sung các lõi xứ lý đồ hoạ độc quyền vào chip Tegra mới để tăng tốc các ứng dụng video trong khi vẫn đảm bảo được khả năng tiết kiệm điện năng. Dù là khập khiễng, song ở góc độ nào đó, việc phát triển các ứng dụng đa nhân cho TBDĐ đang gặp phải những thách thức tương tự trên máy tính cá nhân trong quá khứ. Trước khi BXL đa nhân xuất hiện, hiệu năng của ứng dụng trên máy tính cá nhân được cải thiện bằng cách “ép xung” BXL, và nhiều ứng dụng đã được viết ở chế độ “vòng tua cao" để thực thi nhiều tác vụ ngay trên 1 nhân xử lý.

    Dẫu thế, việc tăng tốc độ xung nhịp lại dẫn đến sự toả nhiệt và tiêu hao điện năng quá mức, và các hãng sản xuất chip như Intel cũng đã áp dụng 1 kỹ thuật mới trong việc bổ sung nhân xử lý nhằm cải thiện hiệu năng. Các nhà phát triển ứng dụng đã đối mặt với thách thức viết lại các ứng dụng để khai thác nhiều nhân xử lý nhằm “cân đối” hiệu năng của các ứng dụng. Tuy nhiên với TBDĐ, sự tiêu tốn điện năng quan trọng nhiều hơn hiệu năng của ứng dụng, theo Gwennap. “Phần mềm rất quan trọng trong việc kiểm soát sự tiêu thụ điện năng… Người dùng có thể nói rằng BXL của tôi tốt hay BXL của tôi không tốt, tuy nhiên những gì ứng dụng làm với BXL mới là sự khác biệt lớn", Gwennap nhấn mạnh.

    Nhìn chung, cùng với sự phát triển của công nghệ và đòi hỏi ngày càng cao của người dùng, TBDĐ nói riêng và thiết bị nói chung đã và đang chờ đợi những giải pháp phần cứng đa nhân mới để từ đó cung cấp những tính năng hiệu quả và mạnh mẽ hơn.

    Nguồn: Techworld