Jelajahi bagaimana kepemimpinan memori SK hynix dan inovasi packaging memengaruhi kecepatan, daya, pasokan, dan total biaya server AI—terutama untuk HBM dan DDR5.

Saat orang memikirkan server AI, mereka membayangkan GPU. Tapi dalam banyak penerapan nyata, memori yang menentukan apakah GPU tetap sibuk—atau menghabiskan waktu menunggu. Training dan inference memindahkan jumlah data yang sangat besar: bobot model, aktivasi, cache attention, embedding, dan batch input. Jika sistem memori tidak mampu mengirim data cukup cepat, unit compute menganggur, dan akselerator mahal Anda menghasilkan lebih sedikit pekerjaan per jam.
Compute GPU bisa meningkat cepat, tetapi perpindahan data tidak meningkat gratis. Subsystem memori GPU (HBM dan packaging-nya) dan memori utama server (DDR5) bersama-sama menentukan kecepatan untuk:
Ekonomi infrastruktur AI biasanya diukur sebagai hasil per biaya unit: tokens/sec per dollar, langkah pelatihan/hari per dollar, atau job yang selesai per rak per bulan.
Memori memengaruhi persamaan itu dari dua arah:
Faktor-faktor ini saling terkait. Bandwidth lebih tinggi bisa meningkatkan utilisasi, tetapi hanya jika kapasitas cukup untuk menjaga data panas tetap lokal. Latensi paling penting ketika pola akses tidak teratur (umum pada beberapa beban inference). Daya dan termal menentukan apakah spes puncak dapat dipertahankan selama jam—penting untuk run training panjang dan inference dengan siklus tugas tinggi.
Artikel ini menjelaskan bagaimana pilihan memori dan packaging memengaruhi throughput server AI dan total biaya kepemilikan, menggunakan sebab-dan-akibat praktis. Artikel ini tidak akan berspekulasi tentang roadmap produk masa depan, harga, atau ketersediaan vendor tertentu. Tujuannya adalah membantu Anda mengajukan pertanyaan yang lebih baik saat mengevaluasi konfigurasi server AI.
Jika Anda sedang memilih server AI, ada baiknya memikirkan “memori” sebagai tumpukan lapisan yang memberi data ke compute. Ketika salah satu lapisan tidak bisa memberikan cukup cepat, GPU tidak hanya melambat sedikit—mereka sering menganggur sementara Anda masih membayar daya, ruang rak, dan akselerator.
Secara garis besar, tumpukan memori server AI terlihat seperti ini:
Gagasan kuncinya: setiap langkah menjauh dari GPU menambah latensi dan biasanya mengurangi bandwidth.
Training cenderung menekan bandwidth dan kapasitas di dalam GPU: model besar, aktivasi besar, banyak baca/tulis bolak-balik. Jika model atau konfigurasi batch dibatasi oleh memori, Anda sering melihat utilisasi GPU rendah walau compute tampak “memadai.”
Inference bisa berbeda. Beberapa beban haus bandwidth memori (LLM dengan konteks panjang), sementara yang lain sensitif terhadap latensi (model kecil, banyak permintaan). Inference sering menunjukkan bottleneck pada seberapa cepat data distage ke memori GPU dan seberapa baik server menjaga GPU tetap terisi di tengah banyak permintaan konkuren.
Menambah compute GPU seperti menambah kasir. Jika “gudang” (subsystem memori) tidak bisa mengirim barang cukup cepat, tambahan kasir tidak meningkatkan throughput.
Kelaparan bandwidth berbiaya tinggi karena menyia-nyiakan bagian sistem yang paling mahal: jam GPU, headroom daya, dan modal klaster. Itulah mengapa pembeli harus menilai tumpukan memori sebagai sistem, bukan sekadar baris terpisah di BOM.
High Bandwidth Memory (HBM) tetaplah “DRAM,” tetapi dibuat dan dihubungkan dengan cara yang sangat berbeda dibandingkan stik DDR5 yang Anda lihat di sebagian besar server. Tujuannya bukan kapasitas maksimum dengan biaya terendah—melainkan menghadirkan bandwidth memori sangat tinggi dalam jejak kecil, dekat dengan akselerator.
HBM menumpuk beberapa die DRAM secara vertikal (seperti lapisan kue) dan menggunakan koneksi vertikal padat (TSV) untuk memindahkan data antar lapisan. Alih-alih mengandalkan saluran sempit berkecepatan tinggi seperti DDR, HBM memakai antarmuka yang sangat lebar. Lebar inilah triknya: Anda mendapatkan bandwidth besar per paket tanpa membutuhkan clock speed ekstrem.
Secara praktis, pendekatan “lebar-dan-dekat” ini mengurangi jarak sinyal dan memungkinkan GPU/akselerator menarik data cukup cepat untuk menjaga unit komputasinya sibuk.
Training dan serving model besar melibatkan pemindahan tensor masif masuk-keluar memori berulang kali. Jika compute menunggu memori, menambah lebih banyak inti GPU tidak banyak membantu. HBM dirancang untuk mengurangi bottleneck itu, itulah sebabnya jadi standar pada akselerator AI modern.
Performa HBM tidak gratis. Integrasi rapat dengan paket compute menciptakan batasan nyata terkait:
HBM unggul ketika bandwidth adalah pembatas. Untuk beban berat kapasitas—basis data besar in-memory, cache sisi CPU besar, atau tugas yang membutuhkan banyak RAM lebih dari bandwidth mentah—menambah HBM seringkali kurang efektif dibanding memperluas memori sistem (DDR5) atau memikirkan ulang penempatan data.
“Kepemimpinan” dalam memori bisa terdengar seperti marketing, tetapi bagi pembeli server AI biasanya terlihat dalam cara yang terukur: apa yang benar-benar dikirim dalam volume, seberapa prediktif roadmap dikirim, dan seberapa konsisten bagian berperilaku setelah dideploy.
Untuk produk HBM seperti HBM3E, kepemimpinan biasanya berarti vendor bisa mempertahankan pengiriman volume tinggi pada grade kecepatan dan kapasitas yang dibangun platform GPU. Eksekusi roadmap penting karena generasi akselerator bergerak cepat; jika roadmap memori tertunda, pilihan platform Anda menyempit, dan tekanan harga meningkat.
Termasuk juga kematangan operasional: kualitas dokumentasi, keterlacakan, dan seberapa cepat isu ditangani saat sesuatu di lapangan tidak cocok dengan hasil lab.
Klaster AI besar tidak gagal karena satu chip sedikit lebih lambat; mereka gagal karena variabilitas berubah menjadi gesekan operasional. Konsistensi binning (cara bagian diklasifikasikan ke “bucket” performa dan daya) mengurangi kemungkinan sebagian node berjalan lebih panas, throttling lebih awal, atau memerlukan tuning berbeda.
Reliabilitas lebih langsung: kegagalan awal yang lebih sedikit berarti lebih sedikit swap GPU, lebih sedikit jendela pemeliharaan, dan lebih sedikit kehilangan throughput “diam-diam” dari node yang dikuras atau dikarantina. Pada skala klaster, perbedaan kecil dalam tingkat kegagalan dapat diterjemahkan menjadi ketersediaan dan beban on-call yang berarti.
Sebagian besar pembeli tidak memasang memori sendiri—mereka deploy platform yang tervalidasi. Siklus kualifikasi (vendor + OEM/ODM + vendor akselerator) bisa memakan waktu berbulan-bulan, dan itu membatasi SKU memori mana yang disetujui pada grade kecepatan, termal, dan pengaturan firmware tertentu.
Implikasi praktis: bagian “terbaik” pada lembar spes hanya berguna jika terqualify untuk server yang bisa Anda beli kuartal ini.
Saat mengevaluasi opsi, minta:
Ini menjaga percakapan fokus pada performa yang bisa dideploy, bukan judul berita.
Performa HBM sering dirangkum sebagai “lebih banyak bandwidth,” tetapi yang diinginkan pembeli adalah throughput: berapa banyak tokens/sec (LLM) atau images/sec (vision) yang bisa Anda pertahankan pada biaya yang dapat diterima.
Training dan inference memindahkan bobot dan aktivasi berulang kali antara unit compute GPU dan memorinya. Jika compute siap tetapi data datang terlambat, performa turun.
Lebih banyak bandwidth HBM paling membantu ketika beban kerja Anda dibatasi memori (menunggu memori), yang umum pada model besar, jendela konteks panjang, dan jalur attention/embedding tertentu. Dalam kasus itu, bandwidth lebih tinggi bisa diterjemahkan menjadi waktu step lebih cepat—berarti lebih banyak tokens/sec atau images/sec—tanpa mengubah model.
Kenaikan bandwidth tidak skala selamanya. Setelah job menjadi compute-bound (unit math adalah pembatas), menambah bandwidth memori memberikan perbaikan yang kecil. Anda akan melihat ini di metrik: stall memori menyusut, tetapi total waktu step berhenti banyak meningkat.
Aturan praktis: jika profiling menunjukkan memori bukan bottleneck utama, fokuslah pada generasi GPU, efisiensi kernel, batching, dan paralelisme daripada mengejar angka bandwidth puncak.
Bandwidth memengaruhi kecepatan; kapasitas menentukan apa yang muat.
Jika kapasitas HBM terlalu kecil, Anda akan dipaksa ke ukuran batch lebih kecil, lebih banyak sharding/offload model, atau panjang konteks lebih rendah—sering mengurangi throughput dan mempersulit deployment. Terkadang konfigurasi sedikit lebih rendah bandwidth dengan kapasitas cukup mengalahkan setup yang lebih cepat tetapi sempit.
Lacak beberapa indikator secara konsisten di seluruh uji:
Ini memberi tahu apakah bandwidth HBM, kapasitas HBM, atau hal lain benar-benar membatasi beban kerja nyata.
HBM bukan sekadar “DRAM yang lebih cepat.” Sebagian besar alasan perilakunya berbeda adalah packaging: bagaimana banyak die memori ditumpuk dan bagaimana stack itu dihubungkan ke GPU. Ini adalah rekayasa sunyi yang mengubah silikon mentah menjadi bandwidth yang dapat digunakan.
HBM mencapai bandwidth tinggi dengan menempatkan memori secara fisik dekat dengan die compute dan menggunakan antarmuka yang sangat lebar. Alih-alih jejak panjang di motherboard, HBM menggunakan koneksi sangat pendek antara GPU dan tumpukan memori. Jarak pendek umumnya berarti sinyal lebih bersih, energi per bit lebih rendah, dan lebih sedikit kompromi pada kecepatan.
Setup HBM tipikal adalah tumpukan die memori yang duduk di samping die GPU (atau akselerator), terhubung melalui base die khusus dan struktur substrat berkeberpadatan tinggi. Packaginglah yang membuat tata letak “samping-ke-samping” padat itu bisa diproduksi.
Packaging yang lebih rapat meningkatkan coupling termal: GPU dan tumpukan memori saling memanaskan, dan hot spot dapat mengurangi throughput berkelanjutan jika pendinginan tidak cukup. Pilihan packaging juga memengaruhi integritas sinyal (seberapa bersih sinyal listrik tetap). Koneksi pendek membantu, tetapi hanya jika material, penyelarasan, dan catu daya dikontrol.
Akhirnya, kualitas packaging menggerakkan yield: jika sebuah stack, koneksi interposer, atau array bump gagal, Anda bisa kehilangan unit rakitan mahal—bukan hanya satu die. Itulah mengapa kematangan packaging dapat memengaruhi biaya HBM dunia nyata sama besar dengan chip memorinya sendiri.
Saat orang membicarakan server AI, perhatian langsung tertuju ke memori GPU (HBM) dan performa akselerator. Tapi DDR5 masih menentukan apakah sisa sistem bisa menjaga akselerator terisi—dan apakah server menyenangkan atau menyulitkan saat dioperasikan dalam skala.
DDR5 adalah memori yang terhubung ke CPU. Ia menangani pekerjaan “di sekitar training/inference”: preprocessing data, tokenisasi, feature engineering, caching, pipeline ETL, sharding metadata, dan menjalankan control plane (scheduler, klien storage, agen monitoring). Jika DDR5 kekurangan, CPU menghabiskan waktu menunggu memori atau paging ke disk, dan GPU mahal menganggur di antara langkah.
Cara praktis memikirkan DDR5 adalah sebagai anggaran staging dan orkestrasi Anda. Jika beban kerja Anda men-stream batch bersih dari storage cepat langsung ke GPU, Anda mungkin memprioritaskan lebih sedikit DIMM berkecepatan tinggi. Jika Anda menjalankan preprocessing berat, caching sisi host, atau banyak layanan per node, kapasitas menjadi pembatas.
Keseimbangan juga bergantung pada memori akselerator: jika model Anda mendekati batas HBM, Anda sering memakai teknik (checkpointing, offload, antrian batch lebih besar) yang meningkatkan tekanan pada memori CPU.
Mengisi setiap slot menaikkan lebih dari sekadar kapasitas: itu meningkatkan konsumsi daya, panas, dan kebutuhan aliran udara. RDIMM berkapasitas tinggi bisa berjalan lebih panas, dan pendinginan marginal bisa memicu throttling CPU—mengurangi throughput ujung-ke-ujung meski GPU tampak baik di atas kertas.
Sebelum membeli, konfirmasi:
Perlakukan DDR5 sebagai lini anggaran terpisah: ia tidak akan menjadi headline benchmark, tetapi sering menentukan utilisasi nyata dan biaya operasi.
Performa server AI bukan hanya soal spes puncak—tetapi tentang berapa lama sistem dapat mempertahankan angka-angka itu tanpa menurun. Daya memori (HBM pada akselerator dan DDR5 di host) berubah langsung menjadi panas, dan panas menetapkan batas untuk densitas rak, kecepatan kipas, dan akhirnya tagihan pendinginan Anda.
Setiap watt ekstra yang dikonsumsi memori menjadi panas yang harus dibuang oleh pusat data Anda. Kalikan itu di 8 GPU per server dan puluhan server per rak, dan Anda bisa mencapai batas fasilitas lebih cepat dari yang diperkirakan. Ketika itu terjadi, Anda mungkin terpaksa:
Komponen yang lebih panas dapat memicu thermal throttling—penurunan frekuensi untuk melindungi perangkat keras. Hasilnya adalah sistem yang tampak cepat dalam tes singkat tetapi melambat selama training panjang atau inference throughput tinggi. Di sinilah “throughput berkelanjutan” lebih penting daripada bandwidth yang diiklankan.
Anda tidak perlu alat eksotis untuk memperbaiki termal; Anda perlu disiplin:
Fokus pada metrik operasional, bukan hanya puncak:
Termal adalah tempat memori, packaging, dan desain sistem bertemu—dan tempat biaya tersembunyi sering muncul pertama kali.
Pilihan memori bisa tampak sederhana di lembar penawaran (“$ per GB”), tetapi server AI tidak berperilaku seperti server umum. Yang penting adalah seberapa cepat akselerator Anda mengubah watt dan waktu menjadi tokens, embeddings, atau checkpoint terlatih yang berguna.
Untuk HBM khususnya, sebagian besar biaya duduk di luar silikon mentah. Packaging canggih (stacking die, bonding, interposer/substrat), yield (berapa banyak stack lulus), waktu tes, dan upaya integrasi semua menumpuk. Pemasok dengan eksekusi packaging yang kuat—sering dikutip sebagai kekuatan untuk SK hynix pada generasi HBM terakhir—bisa memengaruhi biaya terkirim dan ketersediaan sama besarnya dengan harga wafer nominal.
Jika bandwidth memori adalah pembatas, akselerator menghabiskan sebagian waktu yang sudah dibayar untuk menunggu. Konfigurasi memori yang lebih murah yang mengurangi throughput dapat diam-diam menaikkan biaya efektif per langkah pelatihan atau per juta token.
Cara praktis menjelaskannya:
Jika memori lebih cepat meningkatkan output per jam sebesar 15% sementara menaikkan biaya server 5%, ekonomi unit Anda membaik—meskipun BOM lebih tinggi.
TCO klaster biasanya didominasi oleh:
Jadikan diskusi berakar pada throughput dan time-to-results, bukan harga komponen. Bawa estimasi A/B sederhana: tokens/sec terukur (atau steps/sec), output bulanan yang diproyeksikan, dan biaya per unit kerja yang tersirat. Itu membuat keputusan "memori lebih mahal" dapat dibaca oleh finance dan pimpinan.
Rencana build server AI sering gagal karena alasan sederhana: memori bukan “satu bagian.” HBM dan DDR5 masing-masing melibatkan beberapa langkah manufaktur yang saling terkait ketat (die, stacking, testing, packaging, perakitan modul), dan penundaan di langkah mana pun dapat membatasi seluruh sistem. Dengan HBM, rantai ini bahkan lebih dikontraint karena yield dan waktu tes bertambah di setiap die yang ditumpuk, dan paket akhir harus memenuhi batas listrik dan termal yang ketat.
Ketersediaan HBM dibatasi tidak hanya oleh kapasitas wafer, tetapi oleh throughput packaging canggih dan gerbang kualifikasi. Saat permintaan melonjak, lead time memanjang karena menambah kapasitas tidak sesederhana menyalakan jalur perakitan baru—alat baru, proses baru, dan ramp kualitas baru butuh waktu.
Rencanakan multi-sumber di mana realistis (sering lebih mudah untuk DDR5 daripada HBM), dan siapkan alternatif tervalidasi. “Tervalidasi” berarti diuji pada limit daya target Anda, temperatur, dan campuran beban—bukan hanya boot-tested.
Pendekatan praktis:
Perkirakan dalam kuartal, bukan minggu. Konfirmasi komitmen pemasok, tambah buffer untuk fase ramp, dan selaraskan waktu pembelian dengan milestone siklus hidup server (pilot → rollout terbatas → skala). Dokumentasikan perubahan yang memicu re-kualifikasi (swap DIMM, perubahan speed bin, SKU GPU berbeda).
Jangan berkomitmen berlebih pada konfigurasi yang tidak sepenuhnya tervalidasi di platform Anda. “Hampir cocok” bisa menciptakan instabilitas yang sulit di-debug, throughput berkelanjutan lebih rendah, dan biaya rework tak terduga—tepat saat Anda berusaha menskalakan.
Memilih antara lebih banyak kapasitas/bandwidth HBM, lebih banyak DDR5, atau konfigurasi server berbeda paling mudah jika Anda memperlakukannya seperti eksperimen terkontrol: definisikan beban kerja, kunci platform, dan ukur throughput berkelanjutan (bukan spes puncak).
Mulai dengan memastikan apa yang benar-benar didukung dan bisa dikirim—banyak konfigurasi “di atas kertas” tidak mudah dikualifikasi pada skala.
Gunakan model dan data nyata Anda jika memungkinkan; tes bandwidth sintetis membantu, tetapi tidak memprediksi waktu training dengan baik.
Pilot hanya berguna jika Anda bisa menjelaskan mengapa satu node lebih cepat atau lebih stabil. Lacak utilisasi GPU, counter bandwidth HBM/DRAM (jika tersedia), tingkat error memori (correctable/uncorrectable), temperatur dan daya sepanjang waktu, serta event throttling clock. Catat juga retry job dan frekuensi checkpoint—instabilitas memori sering muncul sebagai “restart misterius.”
Jika Anda belum punya alat internal untuk menstandarisasi pilot ini, platform seperti Koder.ai dapat membantu tim cepat membangun aplikasi internal ringan (dashboard, runbook, checklist konfigurasi, atau laporan pilot “bandingkan dua node”) melalui alur kerja chat-driven, lalu mengekspor kode sumber saat Anda siap produksi. Ini cara praktis mengurangi gesekan di siklus kualifikasi berulang.
Prioritaskan HBM lebih banyak/lebih cepat ketika GPU Anda underutilized dan profiling menunjukkan memory stalls atau recomputation aktivasi sering. Prioritaskan jaringan saat efisiensi penskalaan turun tajam setelah menambah node (mis. waktu all-reduce mendominasi). Prioritaskan storage ketika dataloading tidak bisa menjaga GPU terisi atau checkpoint menjadi bottleneck.
Jika Anda butuh kerangka keputusan, lihat /blog/ai-server-tco-basics.
Performa dan biaya server AI sering ditentukan kurang oleh “GPU mana” dan lebih oleh apakah subsystem memori bisa menjaga GPU itu sibuk—jam demi jam, dalam batas termal dan daya nyata.
HBM terutama menggerakkan indikator bandwidth-per-watt dan time-to-train/serve, terutama untuk beban yang haus bandwidth. Packaging canggih adalah penggerak sunyi: ia memengaruhi bandwidth yang bisa dicapai, yield, termal, dan pada akhirnya berapa banyak akselerator yang bisa Anda deploy tepat waktu dan pertahankan pada throughput berkelanjutan.
DDR5 masih penting karena menetapkan atap sisi host untuk persiapan data, stage CPU, caching, dan perilaku multi-tenant. Mudah meremehkan DDR5, lalu menyalahkan GPU atas stall yang sebenarnya dimulai di hulu.
Untuk perencanaan anggaran dan opsi packaging, mulai di /pricing.
Untuk penjelasan lebih dalam dan panduan refresh, jelajahi /blog.
Lacak throughput efektif per watt, utilisasi nyata, metrik stall terkait memori, dan biaya per job saat model bergeser (panjang konteks, ukuran batch, mixture-of-experts) dan saat generasi HBM baru serta pendekatan packaging mengubah kurva harga/performa.
Dalam banyak beban kerja AI, GPU menghabiskan waktu menunggu bobot, aktivasi, atau data cache KV tiba. Ketika subsistem memori tidak mampu memasok data cukup cepat, unit komputasi GPU menganggur dan throughput per dollar Anda turun—bahkan jika Anda membeli akselerator kelas atas.
Tanda praktisnya adalah konsumsi daya GPU tinggi dengan utilisasi efektif rendah, bersamaan dengan counter memory-stall yang tinggi atau tokens/sec yang datar meskipun menambahkan lebih banyak compute.
Pikirkan sebagai aliran:
Masalah performa muncul ketika data sering harus bergerak “ke bawah” tumpukan (HBM → DDR5 → NVMe) selama komputasi aktif.
HBM menumpuk die DRAM secara vertikal dan menggunakan antarmuka yang sangat lebar, ditempatkan dekat dengan GPU lewat packaging canggih. Desain “lebar-dan-dekat” itu menghasilkan bandwidth besar tanpa bergantung pada kecepatan clock ekstrem.
Sebaliknya, DIMM DDR5 berada lebih jauh di papan utama dan memakai saluran yang lebih sempit dengan signaling rate lebih tinggi—bagus untuk server umum, tapi tidak sebanding dengan bandwidth HBM di sisi akselerator.
Gunakan aturan praktis ini:
Jika Anda sudah compute-bound, bandwidth tambahan biasanya memberi imbal hasil menurun; optimasi kernel, strategi batching, atau generasi GPU yang lebih cepat sering kali lebih efektif.
Packaging menentukan apakah HBM bisa mengirimkan bandwidth teoritisnya secara andal dan pada skala. Elemen seperti TSV, micro-bump, dan interposer/substrat memengaruhi:
Bagi pembeli, kematangan packaging muncul sebagai performa berkelanjutan yang lebih stabil dan lebih sedikit kejutan saat penskalaan.
DDR5 sering membatasi “pemain pendukung” di sekitar GPU: preprocessing, tokenisasi, caching sisi host, metadata sharding, buffer dataloader, dan layanan control-plane.
Jika DDR5 kekurangan kapasitas, Anda mungkin melihat GPU kelaparan secara periodik antar langkah atau permintaan. Jika DDR5 terisi penuh atau pendinginannya buruk, bisa terjadi throttling CPU atau instabilitas. Rencanakan DDR5 sebagai anggaran staging/orchestrasi, bukan hal yang diabaikan.
Perhatikan perilaku berkelanjutan (bukan hanya puncak):
Mitigasi biasanya sederhana secara operasional: jaga jalur aliran udara tetap bersih, verifikasi kontak heatsink/cold-plate, atur power cap yang masuk akal, dan beri alert pada temperatur serta tingkat error memori.
Kumpulkan metrik hasil plus metrik “mengapa”:
Minta spesifik yang bisa Anda verifikasi:
Kualifikasi dan konsistensi sering lebih penting daripada perbedaan spes kecil saat Anda deploy dalam skala klaster.
Gunakan lensa unit-ekonomi:
Jika memori berbandwidth atau berkapasitas lebih tinggi menaikkan output cukup (mis. lebih sedikit stall, overhead sharding lebih rendah, jumlah node berkurang untuk memenuhi SLA), itu bisa menurunkan biaya efektif—meskipun BOM lebih tinggi.
Untuk dipahami pemangku kepentingan, bawa perbandingan A/B menggunakan beban kerja Anda: throughput terukur, output bulanan yang diproyeksikan, dan biaya per job/token yang tersirat.
Kombinasi ini membantu menentukan apakah Anda dibatasi oleh HBM, DDR5, efisiensi perangkat lunak, atau termal.