Matematika SIMD per Elemen
Jumlahkan dan kalikan seluruh vektor sekaligus.
Matematika SIMD per Elemen adalah pelajaran Mojo Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Mojo Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Mojo Academy mencakup 4 pelajaran total.
Operasi Matematika pada Seluruh Vektor
Bagian terbaik dari SIMD adalah aritmetika bekerja pada seluruh vektor sekaligus. Satu operasi menyentuh setiap lajur secara bersamaan.
Menjumlahkan Dua Vektor
Jumlahkan dua nilai SIMD, maka setiap lajur dijumlahkan dengan lajur yang bersesuaian. Ini disebut penjumlahan per elemen.
var a = SIMD[DType.int32, 4](1, 2, 3, 4)
var b = SIMD[DType.int32, 4](10, 20, 30, 40)
var c = a + bLajur Sejajar dengan Lajur
Dalam a + b, lajur 0 dijumlahkan dengan lajur 0 dan lajur 1 dengan lajur 1. Lajur tidak pernah tercampur, melainkan tetap sejajar.
print(c[0])Mengalikan Vektor
Perkalian juga dilakukan per elemen. Setiap lajur dari satu vektor dikalikan dengan lajur yang sama dari vektor lainnya.
var p = a * bMengurangkan dan Membagi
Pengurangan dan pembagian mengikuti aturan yang sama. Setiap lajur diproses secara mandiri dan paralel di seluruh kumpulan.
var d = b - aSkalar Bertemu Vektor
Tambahkan satu angka ke vektor, maka Mojo menerapkannya pada setiap lajur. Skalar tersebut tersebar ke semua posisi sekaligus.
var bumped = a + 100Lebar Harus Sama
Untuk menggabungkan dua nilai SIMD, keduanya harus memiliki DType dan lebar yang sama. Jumlah lajur yang berbeda tidak akan sejajar.
Perbandingan Dilakukan per Lajur
Membandingkan dua vektor menghasilkan SIMD berisi Bool, satu True atau False untuk setiap lajur. Setiap lajur melaporkan hasilnya sendiri.
var mask = a > SIMD[DType.int32, 4](2)Menyusutkan Menjadi Satu Angka
Terkadang Anda menginginkan satu jawaban. reduce_add menjumlahkan semua lajur menjadi satu skalar, cocok untuk total.
var total = a.reduce_add()
print(total)Fungsi Matematika Bawaan
Matematika standar seperti sqrt juga bekerja per lajur pada SIMD, dengan menghitung hasil untuk setiap elemen dalam satu pemanggilan.
from math import sqrt
var roots = sqrt(a.cast[DType.float32]())Kode Sama, Banyak Hasil
Menulis a + b terlihat seperti matematika skalar, tetapi menghasilkan banyak nilai sekaligus. Keterbacaan yang disertai kecepatan itulah janji Mojo.
Pemeriksaan Singkat
Anda menghitung a + b, dengan keduanya berupa SIMD[DType.int32, 4]. Bagaimana penjumlahannya dilakukan?
Rangkuman
Matematika SIMD per elemen menjalankan +, -, *, dan / pada setiap lajur sekaligus, skalar tersebar ke semua lajur, dan reduce_add menyusutkan vektor menjadi satu angka. ✨
Belajar Mojo dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Matematika SIMD per Elemen” gratis?
Ya — teks lengkap “Matematika SIMD per Elemen” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Mojo Academy, upgrade ke CoddyKit PRO. Kursus Mojo Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Matematika SIMD per Elemen”?
Jumlahkan dan kalikan seluruh vektor sekaligus. Kamu berlatih Mojo Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Mojo Academy?
Tidak diperlukan pengalaman sebelumnya. Mojo Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Matematika SIMD per Elemen” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Mojo Academy ini?
Ya. Setiap pelajaran Mojo Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengenal Tipe SIMD
- Matematika SIMD per Elemen
- Memilih Lebar SIMD
- Vektorisasi Perulangan