• Directory-based: A single location (directory) keeps track
of the sharing status of a block of memory
• Snooping: Every cache block is accompanied by the sharing
status of that block – all cache controllers monitor the
shared bus so they can update the sharing status of the
block, if necessary
- Write-invalidate: a processor gains exclusive access of
a block before writing by invalidating all other copies
- Write-update: when a processor writes, it updates other
shared copies of that block
• Directory-based: A satu lokasi (direktori) melacak
dari status berbagi blok memori
• mengintai: Setiap cache blok tersebut dibarengi dengan berbagi
status yang menghambat - semua cache controller memantau
bus bersama sehingga mereka dapat memperbarui status berbagi
blok, jika perlu
- Tulis-membatalkan: sebuah prosesor memperoleh akses eksklusif
blok sebelum menulis dengan mengabaikan semua salinan lain
- Tulis-update: ketika sebuah prosesor menulis, memperbarui lain
berbagi salinan dari blok
Selasa, 05 Januari 2010
taxonomy multiprocessor
• SISD: single instruction and single data stream: uniprocessor
• MISD: no commercial multiprocessor: imagine data going
through a pipeline of execution engines
• SIMD: vector architectures: lower flexibility
• MIMD: most multiprocessors today: easy to construct with
off-the-shelf computers, most flexibility
• SISD: single instruksi dan aliran data tunggal: Uniprocessor
• MISD: tidak komersial multiprosesor: bayangkan data yang akan
melalui pipa mesin eksekusi
• SIMD: vektor arsitektur: fleksibilitas yang lebih rendah
• MIMD: paling Multiprocessors today: mudah untuk membangun dengan
off-the-rak komputer, paling fleksibilitas
• MISD: no commercial multiprocessor: imagine data going
through a pipeline of execution engines
• SIMD: vector architectures: lower flexibility
• MIMD: most multiprocessors today: easy to construct with
off-the-shelf computers, most flexibility
• SISD: single instruksi dan aliran data tunggal: Uniprocessor
• MISD: tidak komersial multiprosesor: bayangkan data yang akan
melalui pipa mesin eksekusi
• SIMD: vektor arsitektur: fleksibilitas yang lebih rendah
• MIMD: paling Multiprocessors today: mudah untuk membangun dengan
off-the-rak komputer, paling fleksibilitas
RAID
---- RAID 0 and RAID 1 ----
• RAID 0 has no additional redundancy (misnomer) – it
uses an array of disks and stripes (interleaves) data
across the arrays to improve parallelism and throughput
• RAID 1 mirrors or shadows every disk – every write
happens to two disks
• Reads to the mirror may happen only when the primary
disk fails – or, you may try to read both together and the
quicker response is accepted
• RAID 0 tidak memiliki redundansi tambahan (ironi) - itu
menggunakan sebuah array disk dan garis-garis (interleaves) data
seluruh array untuk meningkatkan paralelisme dan throughput
• RAID 1 mirror atau bayangan setiap disk - setiap menulis
terjadi pada dua disk
• Dibaca ke cermin mungkin terjadi hanya bila utama
disk gagal - atau, Anda dapat mencoba membaca baik bersama-sama dan
respons lebih cepat diterima
----RAID 3----
• Data is bit-interleaved across several disks and a separate
disk maintains parity information for a set of bits
• For example: with 8 disks, bit 0 is in disk-0, bit 1 is in disk-1,
…, bit 7 is in disk-7; disk-8 maintains parity for all 8 bits
• For any read, 8 disks must be accessed (as we usually
read more than a byte at a time) and for any write, 9 disks
must be accessed as parity has to be re-calculated
• High throughput for a single request, low cost for
redundancy (overhead: 12.5%), low task-level parallelism
• Data bit-interleaved di beberapa disk dan terpisah
disk menyimpan informasi paritas untuk satu set bit
• Sebagai contoh: dengan 8 disk, bit 0 adalah dalam disk-0, bit 1 adalah dalam disk-1,
..., Bit 7 adalah dalam disk-7; disk-8 mempertahankan paritas untuk semua 8 bit
• Untuk setiap membaca, 8 disk harus diakses (seperti yang kita biasanya
membaca lebih dari satu byte pada suatu waktu) dan untuk menulis, 9 disk
harus diakses sebagai paritas harus dihitung ulang
• High throughput untuk satu permintaan, biaya rendah
redundansi (overhead: 12,5%), tingkat rendah paralelisme tugas
---RAID 4 adn RAID 5----
• Data is block interleaved – this allows us to get all our
data from a single disk on a read – in case of a disk error,
read all 9 disks
• Block interleaving reduces thruput for a single request (as
only a single disk drive is servicing the request), but
improves task-level parallelism as other disk drives are
free to service other requests
• On a write, we access the disk that stores the data and the
parity disk – parity information can be updated simply by
checking if the new data differs from the old data
• Data blok interleaved - ini memungkinkan kita untuk mendapatkan semua kita
data dari satu disk read - dalam kasus kesalahan disk,
membaca semua 9 disk
• Blok interleaving mengurangi thruput untuk satu permintaan (sebagai
hanya satu disk drive melayani permintaan), tetapi
meningkatkan tingkat paralelisme tugas sebagai disk drive yang lain
bebas untuk layanan permintaan lain
• Pada menulis, kita akses disk yang menyimpan data dan
paritas disk - paritas informasi dapat diperbarui hanya dengan
memeriksa apakah data baru berbeda dari data lama
----RAID 5----
• If we have a single disk for parity, multiple writes can not
happen in parallel (as all writes must update parity info)
• RAID 5 distributes the parity block to allow simultaneous
writes
• Jika kita memiliki satu disk untuk paritas, beberapa tidak bisa menulis
terjadi secara paralel (seperti semua menulis harus memperbarui paritas info)
• RAID 5 mendistribusikan paritas blok untuk memungkinkan secara simultan
menulis
----RAID SUMARY----
• RAID 1-5 can tolerate a single fault – mirroring (RAID 1)
has a 100% overhead, while parity (RAID 3, 4, 5) has
modest overhead
• Can tolerate multiple faults by having multiple check
functions – each additional check can cost an additional
disk (RAID 6)
• RAID 6 and RAID 2 (memory-style ECC) are not
commercially employed
• RAID 1-5 dapat mentolerir satu kesalahan - mirroring (RAID 1)
memiliki 100% di atas kepala, sedangkan paritas (RAID 3, 4, 5) memiliki
sederhana overhead
• Dapatkah mentolerir beberapa kesalahan dengan memiliki beberapa cek
fungsi - setiap tambahan biaya dapat memeriksa tambahan
disk (RAID 6)
• RAID 6 dan RAID 2 (gaya memori ECC) tidak
komersial dipekerjakan
• RAID 0 has no additional redundancy (misnomer) – it
uses an array of disks and stripes (interleaves) data
across the arrays to improve parallelism and throughput
• RAID 1 mirrors or shadows every disk – every write
happens to two disks
• Reads to the mirror may happen only when the primary
disk fails – or, you may try to read both together and the
quicker response is accepted
• RAID 0 tidak memiliki redundansi tambahan (ironi) - itu
menggunakan sebuah array disk dan garis-garis (interleaves) data
seluruh array untuk meningkatkan paralelisme dan throughput
• RAID 1 mirror atau bayangan setiap disk - setiap menulis
terjadi pada dua disk
• Dibaca ke cermin mungkin terjadi hanya bila utama
disk gagal - atau, Anda dapat mencoba membaca baik bersama-sama dan
respons lebih cepat diterima
----RAID 3----
• Data is bit-interleaved across several disks and a separate
disk maintains parity information for a set of bits
• For example: with 8 disks, bit 0 is in disk-0, bit 1 is in disk-1,
…, bit 7 is in disk-7; disk-8 maintains parity for all 8 bits
• For any read, 8 disks must be accessed (as we usually
read more than a byte at a time) and for any write, 9 disks
must be accessed as parity has to be re-calculated
• High throughput for a single request, low cost for
redundancy (overhead: 12.5%), low task-level parallelism
• Data bit-interleaved di beberapa disk dan terpisah
disk menyimpan informasi paritas untuk satu set bit
• Sebagai contoh: dengan 8 disk, bit 0 adalah dalam disk-0, bit 1 adalah dalam disk-1,
..., Bit 7 adalah dalam disk-7; disk-8 mempertahankan paritas untuk semua 8 bit
• Untuk setiap membaca, 8 disk harus diakses (seperti yang kita biasanya
membaca lebih dari satu byte pada suatu waktu) dan untuk menulis, 9 disk
harus diakses sebagai paritas harus dihitung ulang
• High throughput untuk satu permintaan, biaya rendah
redundansi (overhead: 12,5%), tingkat rendah paralelisme tugas
---RAID 4 adn RAID 5----
• Data is block interleaved – this allows us to get all our
data from a single disk on a read – in case of a disk error,
read all 9 disks
• Block interleaving reduces thruput for a single request (as
only a single disk drive is servicing the request), but
improves task-level parallelism as other disk drives are
free to service other requests
• On a write, we access the disk that stores the data and the
parity disk – parity information can be updated simply by
checking if the new data differs from the old data
• Data blok interleaved - ini memungkinkan kita untuk mendapatkan semua kita
data dari satu disk read - dalam kasus kesalahan disk,
membaca semua 9 disk
• Blok interleaving mengurangi thruput untuk satu permintaan (sebagai
hanya satu disk drive melayani permintaan), tetapi
meningkatkan tingkat paralelisme tugas sebagai disk drive yang lain
bebas untuk layanan permintaan lain
• Pada menulis, kita akses disk yang menyimpan data dan
paritas disk - paritas informasi dapat diperbarui hanya dengan
memeriksa apakah data baru berbeda dari data lama
----RAID 5----
• If we have a single disk for parity, multiple writes can not
happen in parallel (as all writes must update parity info)
• RAID 5 distributes the parity block to allow simultaneous
writes
• Jika kita memiliki satu disk untuk paritas, beberapa tidak bisa menulis
terjadi secara paralel (seperti semua menulis harus memperbarui paritas info)
• RAID 5 mendistribusikan paritas blok untuk memungkinkan secara simultan
menulis
----RAID SUMARY----
• RAID 1-5 can tolerate a single fault – mirroring (RAID 1)
has a 100% overhead, while parity (RAID 3, 4, 5) has
modest overhead
• Can tolerate multiple faults by having multiple check
functions – each additional check can cost an additional
disk (RAID 6)
• RAID 6 and RAID 2 (memory-style ECC) are not
commercially employed
• RAID 1-5 dapat mentolerir satu kesalahan - mirroring (RAID 1)
memiliki 100% di atas kepala, sedangkan paritas (RAID 3, 4, 5) memiliki
sederhana overhead
• Dapatkah mentolerir beberapa kesalahan dengan memiliki beberapa cek
fungsi - setiap tambahan biaya dapat memeriksa tambahan
disk (RAID 6)
• RAID 6 dan RAID 2 (gaya memori ECC) tidak
komersial dipekerjakan
polling vs interupt-driven
• When the I/O device is ready to respond, it can send an
interrupt to the CPU; the CPU stops what it was doing;
the OS examines the interrupt and then reads the data
produced by the I/O device (and usually stores into memory)
• In the polling approach, the CPU (OS) periodically checks
the status of the I/O device and if the device is ready with
data, the OS reads it
• Bila I / O device yang siap untuk merespon, hal itu dapat mengirim
interupsi ke CPU CPU berhenti apa yang dilakukannya;
OS memeriksa menyela dan kemudian membaca data
diproduksi oleh I / O device (dan biasanya toko ke memori)
• Pada pendekatan pemungutan suara, CPU (OS) secara berkala memeriksa
status I / O device dan jika perangkat sudah siap dengan
data, OS membacanya
interrupt to the CPU; the CPU stops what it was doing;
the OS examines the interrupt and then reads the data
produced by the I/O device (and usually stores into memory)
• In the polling approach, the CPU (OS) periodically checks
the status of the I/O device and if the device is ready with
data, the OS reads it
• Bila I / O device yang siap untuk merespon, hal itu dapat mengirim
interupsi ke CPU CPU berhenti apa yang dilakukannya;
OS memeriksa menyela dan kemudian membaca data
diproduksi oleh I / O device (dan biasanya toko ke memori)
• Pada pendekatan pemungutan suara, CPU (OS) secara berkala memeriksa
status I / O device dan jika perangkat sudah siap dengan
data, OS membacanya
DMA
• Consider a disk read example: a block in disk is being
read into memory
• For each word, the CPU does a
lw [destination register] [I/O device address] and a
sw [data in above register] [memory-address]
• This would take up too much of the CPU’s time – hence,
the task is off-loaded to the DMA controller – the CPU
informs the DMA of the range of addresses to be copied
and the DMA lets the CPU know when it is done
• Pertimbangkan membaca disk contoh: sebuah blok di disk yang
baca ke memori
• Untuk setiap kata, CPU melakukan
lw [tujuan daftar] [I / O device alamat] dan
sw [data di atas daftar] [alamat memori]
• Hal ini akan mengambil terlalu banyak dari waktu CPU - karenanya,
tugas off-load ke DMA controller - CPU
menginformasikan kepada DMA dari kisaran alamat yang akan disalin
dan DMA memungkinkan CPU tahu kapan itu dilakukan
read into memory
• For each word, the CPU does a
lw [destination register] [I/O device address] and a
sw [data in above register] [memory-address]
• This would take up too much of the CPU’s time – hence,
the task is off-loaded to the DMA controller – the CPU
informs the DMA of the range of addresses to be copied
and the DMA lets the CPU know when it is done
• Pertimbangkan membaca disk contoh: sebuah blok di disk yang
baca ke memori
• Untuk setiap kata, CPU melakukan
lw [tujuan daftar] [I / O device alamat] dan
sw [data di atas daftar] [alamat memori]
• Hal ini akan mengambil terlalu banyak dari waktu CPU - karenanya,
tugas off-load ke DMA controller - CPU
menginformasikan kepada DMA dari kisaran alamat yang akan disalin
dan DMA memungkinkan CPU tahu kapan itu dilakukan
Langganan:
Postingan (Atom)