MacBook Pro M1

Setelah membahas laptop Windows ARM64 dan Linux ARM64, sekarang saya ingin membahas laptop macoS ARM64. Perlu dicatat bahwa di semua platform, sekarang ini perkembangannya masih sangat cepat, ketika saya menulis tentang Surface Pro X Minggu lalu, sekarang sudah ada perubahan baru: sudah mendukung emulasi Intel 64 bit. Di sisi macOS, perkembangannya juga sangat cepat. Tulisan ini saya cicil selama beberapa hari dan hampir tiap hari ada update baru, jadi jika Anda baca artikel ini beberapa hari atau beberapa minggu kemudian, mungkin hal-hal sudah berubah.

Di tulisan ini saya akan menggunakan istilah “Intel” untuk arsitektur Intel x86/Amd64. Saya akan menggunakan Mac M1 untuk mencakup semua produk Apple yang saat ini memakai M1 (MacBook Pro M1, MacBook Air M1, Mac Mini M1). Saya akan menuliskan “Prosessor M1” karena terdengar lebih enak, meskipun secara teknis ini bukan sekedar prosessor tapi SOC (system on a chip), yaitu prosessor dan berbagai device lain (memori, RAM dsb) masuk ke satu chip.

Di tulisan ini saya membahas pengalaman saya dengan MacBook Pro M1 dengan memori 16GB dan disk 1 TB. Sebagai pembanding, saya sudah memakai Macbook 16 Inch 2019 dari tahun lalu (2.6GHz 6‑core Intel Core i7, memori 16 GB, disk 512 GB). Sayangnya sekarang layarnya sedang rusak dan sedang masuk reparasi (untungnya ada Apple Care Plus), jadi tidak bisa saya bandingkan keduanya secara bersebelahan.

Saya berusaha untuk objektif di review ini. Saya tidak fanatik OS tertentu: saya memakai desktop Windows (dengan WSL dengan prosessor Intel), memiliki server di rumah dengan Linux (AMD Ryzen), dan memakai macOS juga.

Performance

Sesuai banyak review, prosessor M1 memang cepat dan menurut saya ini akan jadi lebih cepat lagi dalam beberapa bulan atau tahun mendatang. Masih banyak hal dasar yang bisa ditingkatkan dari prosessor M1 ini untuk meningkatkan kinerjanya, misalnya: meningkatkan frekuensi, menambah core, menambah ukuran cache, menambah memori yang dipaketkan, dsb. Itu masih hal yang sangat dasar, saya yakin Apple akan menambahkan berbagai fitur lain yang bahkan akan membuatnya lebih cepat lagi.

Laptop M1 ini memang lebih cepat dari banyak laptop di luar sana, tapi perlu dicatat ketika melihat berbagai benchmark, kadang mereka terlalu berusaha membuat M1 tampak sangat bagus, dan pembandingnya adalah laptop Intel 1-2 generasi dari yang terbaru. Atau kadang tasknya sangat spesifik sehingga M1 menang. Contohnya adalah benchmark orang ini yang membandingkan M1 dengan Ryzen tapi dari pengalaman pribadi: seharusnya Ryzen jauh lebih cepat dari benchmark itu, dan ternyata setelah dicoba oleh orang lain, Ryzen beberapa kali lebih cepat dari di posting itu.

Perlu diketahui juga bahwa macOS merupakan OS yang lambat untuk software development. Contoh real-nya adalah untuk kompilasi Firefox macOS (di hardware Intel) hampir 2 kali lebih lambat dari Linux. Ini dua-duanya memakai virtual machine dengan spesifikasi yang sama persis. Ini sesuai dengan pengalaman saya sendiri: berbagai pekerjaan kompilasi lebih lambat di macOS. Ketika nanti Linux sudah diporting agar bisa berjalan di M1, kita akan bisa melihat apakah kinerjanya lebih baik dari macOS di M1. Jadi kalau Anda adalah developer yang sudah memakai laptop Apple Intel, cara termudah meningkatkan performance adalah dengan dual boot ke Linux.

Memori

Hanya ada dua pilihan memori: 8 atau 16 GB, dan tidak bisa diupgrade karena memorinya menyatu dengan chip prosessornya. Untuk banyak orang ini sudah lebih dari cukup, tapi beberapa pekerjaan kompilasi butuh memori besar (misalnya kompilasi clang dan rust). Dan ketika memori tidak cukup maka akan terjadi swapping yang membuat kinerja jadi menurun.

Dari pengamatan saya: jika tersedia banyak memori, maka semuanya akan diusahakan dipakai. Saat ini dengan hanya 1 window Safari, tertulis bahwa “1793M resident, 197M private, 1319M shared. PhysMem: 11G used (1822M wired), 4300M unused.” (penjelasan untuk angka-angka ini bisa dibaca di sini). macOS memiliki fitur kompresi memori, tapi kecuali pekerjaan yang Anda lakukan sangat ringan, sebaiknya pilih yang 16 GB.

Baterai

Saya mencoba menonton Netflix sekitar 2 jam dengan kecerahan 25% dan baterai berkurang sekitar 16%. Jadi memang cukup hemat pemakaian dayanya . Saya sendiri jarang memakai laptop lebih dari 4 jam (tidak bagus secara ergonomi), jadi bagi saya kalau batere laptop lebih dari 6 jam itu sudah cukup.

Saya coba dua kali gagal menginstall rust dengan homebrew, dalam proses kompilasinya dibutuhkan 100% cpu dan hampir 100% memori sampai kipas menyala dan lebih dari 1 jam. Dengan kondisi seperti ini, batere turun sekitar 20% dalam sejam, jadi seharusnya bisa lebih dari 5 jam dengan pemakaian amat sangat berat.

Browsing dan Wifi

Kalau Anda punya Internet yang cepat dan website yang dikunjungi juga memiliki server yang cepat, maka browsing dengan Mac M1 ini benar-benar nyaman. Tapi jika koneksi Internet Anda sangat jelek, ya jangan berharap tiba-tiba Mac M1 bisa membuat browsing jadi lebih cepat. Saya sempat mencoba ini di sebuah mall dengan koneksi internet yang jelek, dan peningkatan kecepatan tidak terasa sama sekali.

Kecepatan koneksi Wifi sangat bagus dan rasanya ini sudah mentok kecepatan router WIFI saya (dengan ethernet seharusnya 1000 mbps up/down). Beberapa device saya yang lain tidak bisa mencapai kecepatan WIFI yang dicapai oleh Mac M1.

Speedtest via WIFI di Macbook Pro M1

Browser yang saya pakai di Mac M1 adalah Safari karena ini yang sudah dioptimasi penuh oleh Apple. Kecepatannya terasa ketika membuka situs yang berat pemrosesannya di sisi client, misalnya GMail atau Google Docs. Waktu saya membuka gmail, menutup tabnya, dan membuka lagi urlnya, loadingnya instan. Satu-satunya hal aneh yang saya temui pada browser safari adalah: pada beberapa situs, halamannya kadang blank tapi setelah direfresh (kadang butuh berkali-kali) maka tiba-tiba normal, atau kadang situsnya blank lama lalu tiba2 muncul gambarnya. Contoh situs yang saat ini bisa saya sebutkan adalah tabnine.com. Saya cukup yakin ini bukan masalah koneksi Internet karena Chrome selalu bisa membuka situsnya dengan baik.

Software dan Emulasi intel

Untuk sebagian end user, laptop ini sudah siap dipakai. Aplikasi Microsoft Office juga sudah diporting ke arm64. Browser alternatif seperti Chrome dan Firefox juga tersedia (walau keduanya masih lebih lambat dari Safari). Untuk keperluan enterprise: saya tidak tahu apakah semua software enterprise sudah kompatibel atau belum.

Apple menyertakan teknologi Rosetta 2 yang memungkinkan kita menjalankan aplikasi Intel di macOS. Jadi jika aplikasi belum diporting ke Arm, Anda tetap bisa memakainya. Ketika kali pertama menjalankan aplikasi Intel, kita akan diminta menginstall Rosetta 2, dan setelah itu semuanya transparan. Kita cukup mengklik aplikasinya dan akan berjalan normal.

Untuk aplikasi yang berjalan di mode grafik, saya tidak mengalami masalah sama sekali. Tapi setelah saya cek, ternyata ada juga yang komplain karena beberapa software tidak jalan (misalnya Google Drive). Di macOS aplikasi dipackage semuanya dalam satu bundle (yang sebenarnya sekedar sebuah folder), dan semua library masuk di bundle itu, jadi aplikasi biasanya tidak bingung dengan berbagai library di luar package.

Untuk aplikasi mode teks/command line, terkadang ada masalah, misalnya kadang program bingung berusaha meload library arm64 dan gagal. Contoh aplikasi yang terkena ini adalah CocoaPods.

Saat ini Parallels Desktop sudah ada versi previewnya, tapi sayangnya hanya bisa menjalankan sistem operasi ARM64 open source seperti Linux, belum bisa menjalankan Windows Intel. Satu-satunya emulator Intel yang berjalan cukup baik adalah Qemu (aplikasi terminal/command line), tapi ini masih sangat sulit dipakai oleh orang awam.

Untuk Developer

Untuk developer: M1 ini menurut saya masih belum siap, kecuali kalau pekerjaan Anda terbatas pada hal-hal tertentu. Ini bahkan untuk yang pekerjaannya hanya berfokus pada macOS/iOS saja. Contoh: banyak proyek iOS memakai CocoaPods untuk package management (seperti ‘pip’ di Python atau ‘gem’ di Ruby), tapi saat ini CocoaPods belum bisa berjalan native di arm64, harus diakali dulu memakai emulasi intel.

Sebagai catatan: Apple sudah meluncurkan M1 ini dari 17 November, dan bahkan sebelum itu sudah membagikan developer transition kit (hardware mac dengan Arm64) ke developer pada akhir bulan Juni 2020. Jadi saya punya harapan besar bahwa banyak software sudah berjalan baik.

Berbagai editor dan IDE sudah bisa dijalankan di Mac M1, tapi beberapa fitur atau plugin mungkin tidak berjalan atau tidak seperti harapan. Contoh fitur yang tidak sesuai harapan: ketika membuka terminal di Visual Studio Code akan memulai zsh dalam mode x86 bukan arm64. Plugin favorit saya TabNine (code autocomplete dengan AI) belum berjalan di Mac M1 secara lokal, jadi harus memakai versi cloud berbayar, dan meski saya berlangganan versi komersialnya, tapi tetap lebih suka jika autocomplete dilakukan lokal dan bukan di cloud. Untuk development Android: Emulator Android bisa dipakai dengan banyak batasan (tanpa audio/video, tanpa webview, dsb).

Banyak sekali hal-hal kecil seperti ini yang harus dicek dulu di Internet dan diakali. Kalau Anda berharap sesuatu bisa “langsung jalan”, mungkin akan kecewa. Contoh error yang saya temui pertama kali adalah seputar code signing ketika menginstall emacs dari source code. Anda mungkin akan menemui error yang lain.

Anda bisa membaca juga pengalaman developer iOS yang merasakan banyak masalah, terutama jika masih harus menerbitkan software untuk iOS versi lama (12 dan 13). Kutipan dari situ: Performance also seems really bad, with Xcode periodically freezing, and the whole system becoming so slow that the mouse cursor gets choppy. 

Docker sudah ada versi Previewnya dan bisa menjalankan image Arm dan Intel. Saya sudah mencoba beberapa image baik untuk arm maupun intel dan semuanya bisa berjalan dengan baik, tapi pengalaman orang di Internet tidak demikian (banyak image Intel yang crash). Image versi Intel dijalankan menggunakan qemu secara otomatis.

Mungkin Anda beruntung dan semua image docker yang Anda butuhkan sudah bisa berjalan dengan baik. Mungkin Anda kurang beruntung dan ditengah-tengah development menemui error aneh lalu harus mencari tahu apakah ini error di aplikasi Anda, atau memang masih ada bug di Docker. Jadi ini perlu dipertimbangkan jika ingin memakai Mac M1 untuk development aplikasi penting.

Untuk Anda yang ngoprek hardware, coba cek dulu apakah device Anda akan berjalan. Saya sudah mencoba device dengan Chip CH340 bisa berjalan normal. Saat ini device yang memakai chip FTDI dengan custom VID:PID tidak berjalan. Device yang memakai chip silabs juga bermasalah. Tapi sejujurnya: saya lebih suka mengoprek hardware di laptop Linux murah. Kalau-kalau hardwarenya merusak laptop, lebih mudah recovery datanya.

macOS versi Big Sur

Para pemakai macOS sudah paham bahwa sejak beberapa tahun terakhir ini jika ada versi macOS baru, jangan langsung update, karena pasti masih penuh kutu di versi awal. Ini masih berlaku untuk Big Sur, versi macOS terbaru saat ini. Masalahnya: Big Sur adalah macOS pertama yang mendukung Mac M1, jadi mau tidak mau harus berhadapan dengan berbagai bug yang ada.

Contoh yang membuat kesal adalah masalah appstore yang sering ngadat. Ketika mengupdate Xcode dari versi 12.2 ke 12.3, saya perlu mendownload 6 GB. Lalu instalasi gagal, yang otomatis mendownload ulang tanpa pesan error, tapi sekarang file yang didownload ulang jadi 8 GB. Tapi inipun gagal lagi dengan pesan error, dan download mulai lagi sampai 6 GB dan gagal lagi. Lalu saya hapus semuanya, dan download diulangi lagi, kali ini 11 GB (dan kali ini berhasil). Tadinya saya hampir menyerah dan ingin langsung mendownload/menginstall file installer XPI XCode-nya saja manual.

Kalau mau mencari di Internet, ada banyak hal-hal kecil yang mengesalkan lainnya. Contohnya: menghapus halaman PDF dengan aplikasi Preview.app akan membuat PDF jadi kacau. Preview.app ini adalah aplikasi default yang memakai framework system (PDFKit), jadi mungkin error ini bisa muncul di aplikasi lain juga.

Kalau misalnya Anda mengalami error dan gagal booting, serta gagal restore dari menu restore di boot loader, maka Anda butuh Mac lain (tidak harus Mac M1) untuk melakukan restore. Restorenya seperti merestore iOS, masuk ke mode DFU dan memakai file IPSW. Saya sudah mencoba proses ini sekali.

Aplikasi iOS

Ini tadinya saya pikir bakal jadi game changer, bagus sekali jika aplikasi iPhone dan iPad bisa jalan di macOS. Setelah saya coba: memang jalan sih, tapi dalam kondisinya sekarang ternyata cukup mengecewakan, di bawah ekspektasi saya.

Kekecewaan pertama: tidak semua aplikasi tersedia (atau mungkin belum tersedia). Misalnya Netflix, berbagai aplikasi banking, dsb. Kalaupun tersedia, belum tentu bisa dijalankan. Untuk aplikasi yang tersedia, ada beberapa status di app storenya: Designed for iPad/iPhone dan Designed for iPad/iPhone. Not Verified for macOS. Aplikasi yang “designed for iPhone” akan tampil di Window yang kecil tidak bisa resize, hanya bisa full screen. Aplikasi yang “designed for iPad” akan lebih besar, tapi tidak bisa diresize juga.

Berbagai aplikasi banking, keuangan dsb yang mendeteksi “jailbreak” akan mendeteksi bahwa Mac M1 merupakan device yang dijailbreak. Jadinya tidak mau jalan. Ini sudah saya coba dengan berbagai aplikasi banking/finance dari Indonesia maupun Thailand. Saya tahu bahwa kebanyakan jailbreak detection akan mendeteksi path standar (misalnya /bin/bash) yang tidak seharusnya ada di iOS, tapi akan diinstall oleh jailbreak. Masalahnya file /bin/bash ini (dan banyak file lain) ada dan resmi dari Apple di macOS, tapi hasilnya: Mac M1 terdeteksi sebagai device yang dijailbreak.

Aplikasi yang berjalanpun ternyata kadang kurang berguna dan lebih enak memakai versi aplikasi webnya, terutama untuk app yang memang designed for iPhone karena terlalu mungil. Lebih praktis memakai browser daripada mengakses aplikasi semacam Traveloka atau AirAsia. Berbagai aplikasi yang cocok untuk macOS sudah ada versi native macOS-nya, jadi tidak ada alasan menginstall versi iOS-nya.

Lalu untuk game: bagus sekali bahwa banyak game Apple Arcade tersedia untuk macOS. Tapi masalahnya: layarnya Macbook Air ataupun Macbook Pro M1 bukan touch screen. Kebanyakan game sulit dimainkan gara-gara ini. Bahkan ada yang kursornya hilang setelah kita masuk gamenya, jadi benar-benar tidak bisa dimainkan (contoh: Alba, salah satu game dari Apple Arcade).

Tentunya ada beberapa software yang ternyata bagus, dalam arti seperti ini:

  • Belum ada versi macOS ataupun versi webnya
  • Tidak bermasalah ketika dijalankan di macOS
  • Berguna

Contoh yang agak berguna buat saya adalah Ling (aplikasi belajar bahasa Thai). Coba Anda pikirkan sekarang: aplikasi apa yang penting bagi Anda yang hanya ada di iOS dan tidak bisa di mac, dan akan sangat bagus kalau jadi bisa dijalankan di mac? Saya berharap Coursera masuk dalam aplikasi yang bisa dipakai di Mac M1, tapi sampai sekarang belum tersedia.

Beli Sekarang?

Kemungkinan besar Anda ingin membeli Mac dengan prosessor M1 dengan berbagai alasan, dari sekedar penasaran, ingin pamer atau termakan berbagai blog dan benchmark yang menunjukkan betapa hebatnya M1 ini.

Menurut saya hardware Mac M1 saat ini sudah bagus tapi masih banyak ruang perbaikan. Versi saat ini bentuknya sama persis dengan yang versi Intel, jadi tidak bisa untuk pamer. Bahkan kurang bagus karena port USB-C nya hanya dua di sebelah kiri dan memorinya terbatas (maksimum 16 GB). Selain itu layar yang tidak memiliki fitur touch membuat aplikasi iOS/iPad kurang optimal.

Kelemahan terbesar saat ini adalah masalah software. Dari mulai sistem operasi yang masih baru, sampai dukungan software third party yang terbatas. Batasan software membuat kelebihan hardware menjadi kurang berguna, contoh: baterenya bagus bisa tahan lama, tapi kalau mau nonton Netflix di jalan belum bisa karena belum tersedia aplikasi Netflix yang bisa mendownload film ( versi iOS-nya juga tidak tersedia).

Kalau Anda punya waktu ekstra untuk membantu porting berbagai software ke M1, maka silakan beli Mac M1. Jika dibelikan oleh kantor atau oleh orang tercinta tentunya jangan ditolak. Kalau punya duit banyak dan ingin memberi hadiah natal untuk diri sendiri, silakan beli Mac M1.

Untuk Anda yang mau beli karena akan dipakai 2-3 tahun (atau bahkan lebih), kelemahan kecil seperti port USB-C yang cuma 2 atau memori yang cuma 16 GB atau kamera yang masih 720p akan terus menghantui sampai beberapa tahun ke depan. Jadi mungkin sebaiknya ditunda sampai versi berikutnya.

Satu tanggapan pada “MacBook Pro M1”

  1. Setelah baca dari awal sampe habis, gak kebayang kalau kebelet beli MacBook M1 tanpa baca artikel ini, terutama digunakan untuk development.

    Makasih artikelnya bang,

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.