Daftar Isi:

DEMAC, Cluster Beowulf Modular 3D yang dicetak: 23 Langkah (dengan Gambar)
DEMAC, Cluster Beowulf Modular 3D yang dicetak: 23 Langkah (dengan Gambar)

Video: DEMAC, Cluster Beowulf Modular 3D yang dicetak: 23 Langkah (dengan Gambar)

Video: DEMAC, Cluster Beowulf Modular 3D yang dicetak: 23 Langkah (dengan Gambar)
Video: DEMAC Trailer Detail 2024, November
Anonim
DEMAC, Cluster Beowulf Modular Cetak 3D
DEMAC, Cluster Beowulf Modular Cetak 3D

High Performance Computation (HPC) adalah kemampuan untuk memproses data dan melakukan perhitungan kompleks dengan kecepatan tinggi, ini adalah penerapan "Superkomputer" untuk masalah komputasi yang terlalu besar untuk komputer standar atau akan memakan waktu terlalu lama untuk diselesaikan. The Top500 adalah daftar, yang diterbitkan dua kali setahun, dan peringkat beberapa komputer tercepat, paling kuat di dunia. Negara dan organisasi besar menghabiskan jutaan sumber daya untuk menjalankan dan menjalankan sistem ini bagi ilmuwan untuk memanfaatkan teknologi canggih dan memecahkan masalah yang kompleks.

Bertahun-tahun yang lalu, komputer digunakan untuk meningkatkan kinerjanya dengan meningkatkan kecepatan prosesor. Setelah kami menghadapi perlambatan dalam pendekatan semacam ini, pengembang memutuskan bahwa untuk terus meningkatkan kinerja komputer, banyak inti (atau unit komputasi) harus dikemas bersama. Agregasi dari beberapa sumber daya komputasi dan mekanisme untuk mengontrol sumber daya ini adalah apa yang kita sebut "paralelisme" dalam ilmu komputer. Memiliki banyak inti yang melakukan banyak tugas terdengar seperti pendekatan yang baik untuk meningkatkan kinerja komputer … tetapi, ini membuka pertanyaan besar: bagaimana kita menggunakan sumber daya ini secara lebih efisien?

Pertanyaan-pertanyaan ini telah membuat ilmuwan komputer sibuk, ada banyak cara untuk memberi tahu komputer bagaimana melakukan sesuatu, bahkan ada lebih banyak cara untuk memberi tahu banyak komputer bagaimana melakukan sesuatu. Proyek ini bertujuan untuk mengembangkan platform yang terjangkau di mana setiap orang dapat bereksperimen dengan mesin yang sangat paralel, menguji model yang ada untuk diterapkan dalam proyek Anda sendiri, mengembangkan cara baru dan kreatif untuk memecahkan masalah komputasi atau hanya menggunakannya sebagai cara untuk mengajari orang lain tentang komputer. Kami harap Anda dapat menikmati bekerja dengan DEMAC sebanyak yang kami miliki.

DEMAC

Delaware Modular Assembly Cluster (DEMAC) adalah rangkaian sistem tertanam (komputer berukuran kartu) yang dapat diperpanjang dan satu set bingkai cetak 3D untuk membungkus papan dan perangkat keras tambahan yang menyediakan daya, pendinginan, dan akses jaringan.

Setiap perangkat atau sistem tertanam adalah komputer kecil, Papan Parallella yang menggabungkan sumber daya prosesor ARM dual core, coprocessor 16-core yang disebut Epiphany dan FPGA tertanam dengan fleksibilitas tumpukan sumber terbuka yang lengkap. Mount adalah bingkai cetak 3D buatan rumah yang memungkinkan implementasi berbiaya rendah dan struktur yang dapat ditingkatkan. Ini dirancang untuk memuat 4 unit rak ukuran standar (seperti yang Anda temukan di ruang server komputer).

Instruksi ini meliputi:

- Daftar bahan yang dibutuhkan

- Petunjuk untuk mencetak bingkai secara 3D

- Instruksi untuk merakit dan menghubungkan bagian-bagiannya

- Panduan untuk mengunduh dan menginstal perangkat lunak yang diperlukan

- Deskripsi tentang cara menghubungkan dan berinteraksi dengan cluster

- A "Mengapa kita melakukan ini?" bagian

Siapa kita?

Kami adalah CAPSL (Arsitektur Komputer dan Laboratorium Paralel), dari University of Delaware. Kami percaya masa depan komputasi harus memiliki dasar yang kuat dalam teori Dataflow (yang akan kami jelaskan nanti dalam instruksi ini jika Anda tertarik).

Perlengkapan

Daftar ini menjelaskan bahan yang dibutuhkan untuk membangun cluster 4-papan

- 4 papan Parallella (Anda bisa mendapatkannya dari DigiKey atau vendor lain, Anda dapat menemukan informasi lebih lanjut di situs web mereka

- 4 kartu micro-SD dengan setidaknya 16Gb (ini adalah paket 10 yang sangat murah atau sesuatu seperti kombo yang lebih fleksibel ini)

- 4 kabel micro-USB panjang minimal 30 cm (1 kaki) (saya sarankan ini)

- Pengisi Daya USB [dengan setidaknya 4 port tipe A] (Saya merekomendasikan yang ini dengan 6 port, atau satu dengan faktor bentuk yang sama, karena casing daya dirancang untuk itu)

- Kipas Pendingin [ukuran maksimal 100 mm x 100 mm x 15 mm] (Saya merekomendasikan yang ini karena murah dan berfungsi, tetapi yang lain dengan ukuran dan konfigurasi kabel yang sama berfungsi)

- Catu daya untuk kipas pendingin (Jika konfigurasi Anda untuk lebih dari 8 papan, saya sarankan yang ini atau yang serupa [AC 100 V/ 240 V ke DC 12 V 10 A 120 W] yang memiliki casing logam yang bagus dan juga dapat dipasang ke sakelar) (Jika Anda hanya akan memasang dua kipas atau kurang, Anda dapat menggunakan 12 V dengan setidaknya 1 catu daya keluaran yang mungkin Anda miliki)

- 5 Kabel Ethernet (4 bisa pendek seperti ini, tergantung pada jarak dari sakelar ke papan, dan satu harus cukup panjang untuk menghubungkan sakelar dengan komputer Anda atau modem untuk mengakses jaringan cluster)

>> Catatan Penting: Sistem pendingin diperlukan, jika tidak, papan akan menjadi terlalu panas! <<<

Bagian yang Dicetak 3D

- 4 Baki Papan (Frame_01)

- 1 Casing Papan (Frame_02)

- 1 Casing Kipas (Frame_03_B & Frame_03_T)

- 1 Casing Daya (Frame_04)

Langkah 1: Tentang DEMAC

Tentang DEMAC
Tentang DEMAC

DEMAC adalah bagian dari gambaran yang lebih besar, platform yang fleksibel dan dapat ditingkatkan yang memungkinkan kami mengembangkan dan menguji model eksekusi pemrograman (PXM) baru untuk komputasi paralel. PXM lebih dari sekadar cara untuk menggambarkan komputasi, ini mewakili tulang punggung yang menyediakan kesepakatan antara cara program diekspresikan dan bagaimana diterjemahkan ke bahasa umum yang dapat dieksekusi oleh mesin. Kami menjelaskan satu set elemen yang memungkinkan pengguna untuk menghasilkan program dan cara untuk mengatur pelaksanaan program. Program dapat dioptimalkan untuk menargetkan arsitektur tertentu oleh pengguna atau alat otomatis berdasarkan latar belakang umum ini.

Anda dapat mempelajari lebih lanjut tentang proyek ini di akhir instruksi ini, Anda juga dapat mengklik di sini untuk mendapatkan informasi lebih lanjut tentang DEMAC atau di sini untuk mendapatkan informasi lebih lanjut tentang CAPSL)

Langkah 2: Cetak 3D DEMAC

Cetak 3D DEMAC!
Cetak 3D DEMAC!
Cetak 3D DEMAC!
Cetak 3D DEMAC!
Cetak 3D DEMAC!
Cetak 3D DEMAC!

Di bagian ini Anda dapat menemukan panduan untuk mencetak bingkai 3D yang membungkus komponen lain dan memberikan dukungan struktural. Bahkan jika Anda seorang master pencetakan 3D, berikut adalah beberapa tips yang dapat Anda pertimbangkan saat mencetak bingkai ini. Semua bingkai dapat dicetak menggunakan nozzle 0,4 mm dengan tinggi lapisan 0,3 atau 0,2 (Anda juga bisa menggunakan adaptif). Saya mencetak semuanya menggunakan PLA tetapi tidak masalah jika Anda ingin menggunakan bahan lain (selama bahan tersebut memberikan stabilitas struktural dan dapat mentolerir suhu yang lebih tinggi atau sama dengan PLA).

File STL:

www.thingiverse.com/thing:4493780

cults3d.com/en/3d-model/various/demac-a-mo…

www.myminifactory.com/object/3d-print-dema…

Baki Papan (Frame_01)

Tidak diperlukan dukungan tambahan. Yang ini cukup mudah, cukup letakkan dengan permukaan rata menghadap ke permukaan cetak.

Casing Papan (Frame_02)

Yang ini mungkin memerlukan beberapa dukungan di balok tengah. Anda dapat berargumen bahwa mesin/slicer yang disetel dengan baik dapat mencetak jembatan tersebut tanpa dukungan tambahan. Silakan coba beberapa tes stres jembatan terlebih dahulu jika Anda ingin mencetak tanpa dukungan karena idenya adalah tidak memerlukannya. Di sisi lain, kolom lateral dan dinding memberikan dukungan yang cukup untuk dicetak tanpa struktur pendukung tambahan.

Casing Kipas (Frame_03_B & Frame_03_T)

Tidak diperlukan dukungan tambahan. Tempatkan saja kedua bagian dengan permukaan rata menghadap permukaan pencetakan.

Casing Daya (Frame_04)

Mirip dengan Frame_02, yang satu ini mungkin memerlukan beberapa dukungan di balok tengah. Anda juga dapat mencoba mencetak yang ini tanpa bahan pendukung tambahan (seperti yang dimaksudkan). Kolom lateral dan dinding memberikan dukungan yang cukup untuk dicetak tanpa struktur pendukung tambahan.

Casing Pendingin Keluaran (Frame_05_B & Frame_05_T)

Tidak diperlukan dukungan tambahan. Tempatkan saja kedua bagian dengan permukaan rata menghadap permukaan pencetakan.

Langkah 3: Pasang DEMAC

Kumpulkan DEMAC!
Kumpulkan DEMAC!

Sekarang setelah Anda memiliki semua bagian yang diperlukan, saatnya untuk mulai merakit cluster.

Ingatlah untuk menghapus bahan pendukung yang mungkin Anda miliki di bingkai.

Langkah 4: Tempatkan Kipas di Casing

Tempatkan Kipas di Casing
Tempatkan Kipas di Casing
Tempatkan Kipas di Casing
Tempatkan Kipas di Casing

Cukup geser kipas ke dalam Frame_03_B (dengan kabel di sudut kanan bawah), bagian bawah harus pas di dalam dinding melengkung kecil yang menahan kipas di tempatnya.

Tempatkan Frame_03_T dengan dinding melengkung kecil menghadap ke bawah di atas Frame_03_B (dengan kipas sudah terpasang). Berhati-hatilah untuk menempatkan penutup Frame_03_T yang paling lebar menghadap ke muka (belakang) Frame_03_B yang lebih lebar. Bingkai harus klik dan tutupnya harus tetap di tempatnya.

Langkah 5: Bergabunglah dengan Casing Papan Dengan Casing Daya

Bergabunglah dengan Casing Papan Dengan Casing Daya
Bergabunglah dengan Casing Papan Dengan Casing Daya
Bergabunglah dengan Casing Papan Dengan Casing Daya
Bergabunglah dengan Casing Papan Dengan Casing Daya

Tempatkan Frame_02 di atas Frame_04, keduanya dirancang untuk disatukan. Ada penyok kecil di bagian bawah Frame_02 yang sesuai dengan konektor di atas Frame_04. Terapkan kekuatan lembut untuk menghubungkannya.

Langkah 6: Pasang Unit Pendingin

Pasang Unit Pendingin
Pasang Unit Pendingin

Frame_03 (B&T) dirancang untuk menyatu dengan Frame_02, tempatkan kipas menghadap papan (aliran udara harus masuk ke dalam Frame_02). Ada penyok kecil pada kolom Frame_02 yang seharusnya cocok dengan tanda di Frame_03_B. Berikan tekanan lembut pada permukaan lateral struktur hingga rangka berbunyi klik.

Langkah 7: Tempatkan Papan di Baki Papan

Tempatkan Papan di Baki Papan
Tempatkan Papan di Baki Papan

Frame_01 memiliki 4 pin yang sesuai dengan lubang di papan Parallella. Papan harus mudah masuk ke dalam baki. Tergantung pada kalibrasi 3D-Printer Anda, ukurannya mungkin terlalu besar atau terlalu kecil, Anda dapat menggunakan sedikit lem silikon cair untuk menahannya atau menekannya sedikit dengan tang untuk mengurangi diameternya.

>> Catatan Penting: Ingatlah untuk menempatkan unit pendingin di papan <<<

Langkah 8: Geser Baki Papan di Casing Papan

Geser Baki Papan di Casing Papan
Geser Baki Papan di Casing Papan

Frame_01 menyediakan slot yang sesuai dengan rel Frame_02 untuk setiap level. Perhatikan bahwa hanya ada satu sisi yang terbuka untuk menerima baki papan. Ada juga tonjolan kecil yang membantu menjaga Frame_01 tetap di tempatnya (jujur, ini bisa menggunakan beberapa peningkatan di versi mendatang).

Geser semua 4 baki papan dengan papan yang sudah terpasang, 1 per setiap tingkat.

Langkah 9: Tempatkan Catu Daya Di Dalam Casing Daya

Tempatkan Catu Daya Di Dalam Casing Daya
Tempatkan Catu Daya Di Dalam Casing Daya

Tempatkan catu daya USB di dalam Frame_04 dengan port USB menghadap ke luar. Ada lubang kecil di sisi lain untuk kabel daya yang memberi makan hub.

Langkah 10: Hubungkan Kipas ke Catu Daya Pendingin

Kipas sekarang harus terhubung ke catu daya 12 V yang menyediakan energi ke unit pendingin.

>> Catatan Penting: Jaga agar sistem pendingin bekerja sepanjang waktu selama papan terhubung ke catu daya <<<

Langkah 11: Konfigurasikan OS

1. Unduh OS yang direkomendasikan (Parabuntu) di sini

Ada dua revisi chip (z7010 [P1600/P1601] dan z7020 [P1602/A101040] yang memerlukan file berbeda.

Untuk kedua revisi, ada versi tanpa kepala (Tidak ada antarmuka pengguna grafis) dan versi yang menyediakan dukungan HDMI dan antarmuka pengguna grafis)

Jika Anda ingin menggunakan output HDMI ingatlah untuk mendapatkan kabel mini-HDMI.

Anda dapat berinteraksi dengan versi tanpa kepala melalui jaringan.

Informasi lebih lanjut dan penjelasan rinci dapat ditemukan di sini di situs resmi.

Berikut adalah langkah-langkah untuk menginstal sistem operasi menggunakan distro berbasis Linux. Anda dapat menggunakan perintah di terminal (tanpa simbol $) untuk langkah selanjutnya atau periksa prosedur lain di situs web.

2. Instal

- Masukkan kartu micro-SD di komputer biasa Anda- Buka zip gambar Ubuntu. Ubah [releasename] untuk nama gambar.

$ gunzip -d [nama rilis].img.gz

3. Verifikasi jalur perangkat kartu SD Anda

Jalur perangkat yang tepat ke kartu SD Anda tergantung pada distribusi Linux dan pengaturan komputer Anda. Menggunakan perintah di bawah ini untuk mendapatkan jalur yang benar. Jika tidak jelas dari output jalur mana yang benar, coba perintah dengan dan tanpa kartu SD dimasukkan. Di Ubuntu, jalur yang dikembalikan mungkin seperti '/ dev/mmcblk0p1'.

$df -h

4. Lepas kartu SDAnda harus melepas semua partisi pada kartu SD sebelum membakar kartu. [sd-partition-path] berasal dari perintah 'df' di langkah 3.

$ umount [sd-partition-path]

5. Bakar gambar disk Ubuntu pada kartu micro-SD

Bakar gambar ke kartu SD menggunakan utilitas 'dd' yang ditunjukkan pada contoh perintah di bawah ini. Harap berhati-hati dan pastikan Anda menentukan jalur dengan benar karena perintah ini tidak dapat diubah dan akan menimpa apa pun di jalur! Contoh perintah di Ubuntu adalah: 'sudo dd bs=4M if=my_release.img of=/dev/mmcblk0'. Harap bersabar, ini bisa memakan waktu (beberapa menit) tergantung pada komputer dan kartu SD yang digunakan.

$ sudo dd bs=4M if=[releasename].img of= [sd-partition-path]

6. Pastikan semua penulisan ke kartu SD telah selesai

$sinkronisasi

7. Masukkan kartu SD ke dalam slot kartu SD di papan

Langkah 12: Hubungkan Papan ke Catu Daya

Gunakan kabel miniUSB ke USB-A untuk menyambungkan salah satu papan ke hub USB. Anda dapat memberi label pada port dan kabel atau menentukan urutan koneksi jika Anda perlu melepaskan board nanti.

Langkah 13: Menyiapkan Router

Menyiapkan Router
Menyiapkan Router

Jika Anda melakukan instalasi OS tanpa kepala saat berada di jaringan besar, Anda harus menggunakan router dan menghubungkannya ke internet, papan Parallella, dan komputer pribadi Anda.

Jika Anda tidak dapat terhubung ke router, Anda juga dapat menghubungkan papan secara langsung ke komputer Anda menggunakan kabel Ethernet, prosedur ini bisa sedikit lebih rumit dan tidak akan tercakup dalam instruksi ini.

Setelah semuanya terhubung, buka antarmuka router Anda untuk mengetahui Alamat IP apa yang diberikan ke Parallella Anda secara default. Cari tab yang bertuliskan Jaringan. Kemudian temukan bagian berlabel Daftar Klien DHCP. Di sana Anda akan melihat papan Parallella Anda dan Alamat IP-nya.

Dengan Alamat IP ini, Anda dapat SSH ke Parallella dan mengatur alamat IP statis.

Langkah 14: Menghubungkan ke Parallella Board Dengan SSH

Catatan: Untuk bagian ini, [default_IP] adalah alamat IP dinamis yang Anda temukan di Daftar Klien DHCP.

Periksa koneksi ke papan

$ping [default_IP]

SSH ke papan untuk pertama kalinya (kata sandi default adalah parallella)

$ssh parallella@[default_IP]

Langkah 15: Menyiapkan Jaringan

- Ubah nama host: edit /etc/hostname

Di sini Anda dapat menetapkan nama apa pun yang Anda inginkan, kami sarankan menggunakan NOPA##

Di mana ## mengidentifikasi nomor papan (yaitu 01, 02, …)

- Atur Alamat IP papan lain: edit /etc/hosts

Setel Alamat IP statis: tambahkan teks di bawah ini untuk /etc/network/interfaces.d/eth0

#Antarmuka jaringan utamaauto eth0

iface eth0 inet statis

alamat 192.168.10.101 #IP harus berada dalam jangkauan router

netmask 255.255.255.0

gateway 192.168.10.1 #Ini harus menjadi alamat router

server nama 8.8.8.8

server nama 8.8.4.4

Setelah Anda menetapkan IP ke papan, Anda dapat memulai kembali koneksi dengan perintah

$ ifdown eth0; ifup eth0

atau reboot papan

Langkah 16: Menyiapkan Keygen dan Akses Tanpa Kata Sandi di Papan

Siapkan pasangan kunci publik pribadi di setiap node (termasuk node kepala). Buat folder sementara, buat kunci baru dan jadikan itu kunci resmi, dan tambahkan semua NOPA ke host yang dikenal seperti yang ditunjukkan di bawah ini.

mkdir tmp_sshcd tmp_ssh ssh-keygen -f./id_rsa

#Tekan enter dua kali untuk menyetel dan mengonfirmasi kata sandi kosong

cp id_rsa.pub otor_keys

untuk saya di `seq 0 24`; lakukan j=$(echo $i | awk '{printf "%02d\n", $0}');

ssh-keyscan NOPA$J >> known_hosts; selesai

Langkah 17: Menginstal Sshfs

- Menggunakan sshfs memungkinkan berbagi file di antara papan di cluster. Jalankan perintah berikut:

$ sudo apt-get install -y sshfs

- Memeriksa / Membuat Grup Sekering

Periksa apakah grup sekering ada:

$ cat /etc/group | grep 'sekering'

Jika grup ada, jalankan perintah berikut

$ bash sudo usermod -a -G fuse parallella

- Jika grup tidak ada, buat dan tambahkan pengguna ke dalamnya

$ sudo group tambahkan sekering

$ sudo usermod -a -G fuse parallella

- Batalkan komentar pada baris user_allow_other di file fuse.config

$ sudo vim /etc/fuse.conf

Langkah 18: Konfigurasikan Folder NFS

- Ubah file /etc/fstab

$ sudo vim /etc/fstab

- Ganti konten dengan teks yang ditunjukkan di bawah ini

# [sistem file] [titik pemasangan] [ketik] [opsi]

sshfs#parallella@NOPA01:/home/parallella/DEMAC_nfs /home/parallella/DEMAC_nfs fuse comment=sshfs, noauto, users, exec, rw, uid=1000, gid=1000, allow_other, hubungkan kembali, transform_symlinks, BatchMode=yes, _netdev, identityfile=/home/parallella/.ssh/id_rsa, default_permissions 0 0

Langkah 19: Hubungkan Papan ke Switch

Tempatkan sakelar di bawah cluster atau di suatu tempat di dekatnya, gunakan kabel Ethernet untuk menghubungkan papan yang telah Anda konfigurasikan ke sakelar. Anda juga dapat menghubungkan sakelar dan komputer Anda ke router untuk mendapatkan akses ke cluster.

Anda harus dapat melakukan ping dan ssh ke papan yang sekarang terhubung ke sakelar dengan IP statis.

Anda juga dapat menambahkan IP dan nama host ke file /etc/hosts Anda. Anda akan dapat menggunakan nama host untuk terhubung alih-alih mengetikkan seluruh alamat IP.

Langkah 20: Ulangi Langkah 11 hingga 19 untuk Setiap Papan

Ikuti prosedur untuk mengonfigurasi OS dan jaringan untuk setiap papan.

>> Catatan Penting: Gunakan hostam dan IP yang berbeda untuk setiap papan! Mereka harus unik melalui jaringan! <<<

Langkah 21: Hubungkan Periferal

Hubungkan Periferal!
Hubungkan Periferal!

Pastikan kipas berfungsi:

Pastikan kipas mendapatkan daya dan aliran udara masuk ke dalam casing Board. Sambungan harus stabil dan independen dari elemen lain. Ingat papan bisa terlalu panas jika tidak didinginkan dengan benar.

Pastikan papan terhubung ke sakelar:

Pada titik ini Anda seharusnya telah mengonfigurasi setiap papan secara independen. Papan juga harus terhubung ke sakelar. Manual sakelar harus memberikan informasi yang dapat digunakan untuk memeriksa apakah proses pengaktifan selesai dengan benar, mungkin ada beberapa LED yang menunjukkan status.

Hubungkan Papan ke Catu Daya:

Gunakan kabel micro-USB ke USB-A untuk menghubungkan setiap papan ke hub USB. Anda dapat memberi label port atau menentukan urutan jika Anda perlu melepaskan satu papan.

Langkah 22: Terapkan Kekuatan

1. Kipas angin harus bekerja.

2. Papan harus terhubung ke sakelar Ethernet.

3. Periksa apakah papan terhubung ke hub USB.

4. Berikan daya ke hub USB.

5. Aktifkan DEMAC!

6. Untung!

Langkah 23: Sumber Daya Perangkat Lunak

MPI (Antarmuka Penyampaian Pesan)

MPI adalah protokol komunikasi untuk pemrograman komputer paralel. Komunikasi point-to-point dan kolektif didukung.

www.open-mpi.org/

OpenMP (Buka Multi-Pemrosesan)

Antarmuka pemrograman aplikasi (API) OpenMP (Open Multi-Processing) mendukung multi-platform shared-memory multiprocessing programming dalam C, C++, dan Fortran, pada banyak platform. Ini terdiri dari satu set arahan kompiler, rutinitas perpustakaan, dan variabel lingkungan yang mempengaruhi perilaku run-time.

www.openmp.org/

Perangkat Lunak Parallella

Pengembang menyediakan tumpukan perangkat lunak sumber terbuka, termasuk SDK untuk berinteraksi dengan akselerator.

www.parallella.org/software/

Anda juga dapat menemukan Manual dan informasi lebih rinci.

Mereka juga memiliki repositori GitHub:

github.com/parallella

Jangan ragu untuk mengunduh dan menjalankan beberapa contohnya, salah satu favorit saya adalah game of life berdasarkan Conway's Game of Life yang terkenal.

Penafian: Definisi mungkin disalin dari wikipedia

Direkomendasikan: