Batas kapasitas komputasi berdasarkan edisi SQL Server

Berlaku untuk:SQL Server

Artikel ini membahas batas kapasitas komputasi untuk edisi SQL Server dan perbedaannya dalam lingkungan fisik dan virtual dengan prosesor multithreading (SMT) simultan. Pada CPU Intel, SMT disebut Hyper-Threading.

Gambaran Umum

Diagram memperlihatkan pemetaan untuk menghitung batas kapasitas.

Tabel ini menjelaskan notasi dalam diagram sebelumnya:

Nilai Deskripsi
0..1 Nol atau satu
1 Tepat satu
1..* Satu atau lebih
0..* Nol atau lebih
1..2 Satu atau dua

Untuk menguraikan lebih lanjut:

  • Komputer virtual (VM) memiliki satu atau beberapa prosesor virtual.
  • Satu atau beberapa prosesor virtual dialokasikan untuk tepat satu komputer virtual.
  • Nol atau satu prosesor virtual dipetakan ke nol atau lebih prosesor logis. Ketika pemetaan prosesor virtual ke prosesor logis adalah:
    • Satu hingga nol: mewakili prosesor logis yang tidak terikat yang tidak digunakan oleh sistem operasi tamu.
    • Satu ke banyak: mewakili overcommit.
    • Nol hingga banyak: mewakili tidak adanya komputer virtual pada sistem host. Jadi VM tidak menggunakan prosesor logis apa pun.
  • Soket dipetakan ke nol atau lebih inti. Saat pemetaan soket-ke-inti adalah:
    • Satu hingga nol: mewakili soket kosong. Tidak ada chip yang diinstal.
    • Satu ke satu: mewakili chip inti tunggal yang dipasang di soket. Pemetaan ini jarang terjadi akhir-akhir ini.
    • Satu hingga banyak: mewakili chip multi-core yang dipasang di soket. Nilai umumnya adalah 2, 4, dan 8.
  • Inti dipetakan ke satu atau dua prosesor logis. Ketika pemetaan inti ke prosesor logis adalah:
    • Satu ke satu: SMT nonaktif.
    • Satu hingga dua: SMT aktif.

Definisi berikut berlaku untuk istilah yang digunakan dalam artikel ini:

  • Utas atau prosesor logis adalah salah satu mesin komputasi logis dari perspektif SQL Server, sistem operasi, aplikasi, atau driver.

  • Inti adalah unit prosesor. Ini dapat terdiri dari satu atau beberapa prosesor logis.

  • Prosesor fisik dapat terdiri dari satu atau beberapa inti. Prosesor fisik sama dengan paket prosesor atau soket.

Melanggar perubahan dalam Pembaruan Kumulatif SQL Server 2022 11

SQL Server membatasi jumlah prosesor logis per simpul NUMA menjadi 64. Pada server dengan lebih dari 64 prosesor logis per simpul NUMA, Anda dapat menggunakan konfigurasi BIOS / firmware untuk mengubah jumlah simpul NUMA per soket fisik yang disajikan ke sistem operasi, untuk membatasi maksimum 64 prosesor logis.

Anda juga dapat mempertimbangkan untuk menonaktifkan SMT. Pada CPU Intel, SMT disebut Hyper-Threading.

Keterangan

Sistem dengan lebih dari satu prosesor fisik atau sistem dengan prosesor fisik yang memiliki beberapa inti dan/atau SMT memungkinkan sistem operasi menjalankan beberapa tugas secara bersamaan. Setiap utas eksekusi muncul sebagai prosesor logis. Misalnya, jika komputer Anda memiliki dua prosesor quad-core dengan SMT diaktifkan dan dua utas per inti, Anda memiliki 16 prosesor logis: 2 prosesor x 4 core per prosesor x 2 utas per inti. Perlu dicatat bahwa:

  • Kapasitas komputasi prosesor logis dari satu utas inti SMT kurang dari kapasitas komputasi prosesor logis dari inti yang sama dengan SMT yang dinonaktifkan.

  • Kapasitas komputasi dari dua prosesor logis dalam inti SMT lebih besar dari kapasitas komputasi inti yang sama dengan SMT dinonaktifkan.

Setiap edisi SQL Server memiliki dua batas kapasitas komputasi:

  • Jumlah maksimum soket (atau prosesor fisik atau paket prosesor)

  • Jumlah maksimum inti seperti yang dilaporkan oleh sistem operasi

Batas ini berlaku untuk satu instans SQL Server. Mereka mewakili kapasitas komputasi maksimum yang digunakan satu instans. Mereka tidak membatasi server tempat instans mungkin disebarkan. Bahkan, menyebarkan beberapa instans SQL Server di server fisik yang sama adalah cara yang efisien untuk menggunakan kapasitas komputasi server fisik dengan lebih banyak soket dan/atau inti daripada batas kapasitas yang diizinkan.

Tabel berikut menentukan batas kapasitas komputasi untuk satu instans dari setiap edisi SQL Server:

Edisi SQL Server Kapasitas komputasi maksimum untuk satu instans (SQL Server Database Engine) Kapasitas komputasi maksimum untuk satu instans (AS, RS)
Edisi Perusahaan: Lisensi berbasis inti 1 Maksimum sistem operasi Maksimum sistem operasi
Pengembang Maksimum sistem operasi Maksimum sistem operasi
Standard Terbatas pada kurang dari 4 soket atau 24 inti Terbatas pada kurang dari 4 soket atau 24 inti
Ekspres Terbatas pada kurang dari 1 soket atau 4 core Terbatas pada kurang dari 1 soket atau 4 core

1 Enterprise Edition dengan lisensi Server + Client Access License (CAL) dibatasi hingga 20 core per instans SQL Server. (Lisensi ini tidak tersedia untuk perjanjian baru.) Tidak ada batasan di bawah model Lisensi Server berbasis Inti.

Dalam lingkungan virtual, batas kapasitas komputasi didasarkan pada jumlah prosesor logis, bukan inti. Alasannya adalah bahwa arsitektur prosesor tidak terlihat oleh aplikasi tamu.

Misalnya, server yang memiliki empat soket yang diisi dengan prosesor quad-core dan kemampuan untuk mengaktifkan dua utas SMT per inti berisi 32 prosesor logis dengan SMT diaktifkan. Tetapi hanya berisi 16 prosesor logis dengan SMT dinonaktifkan. Prosesor logis ini dapat dipetakan ke komputer virtual di server. Beban komputasi komputer virtual pada prosesor logis tersebut dipetakan ke utas eksekusi pada prosesor fisik di server host.

Anda mungkin ingin menonaktifkan SMT ketika performa untuk setiap prosesor virtual penting. Anda dapat mengaktifkan atau menonaktifkan SMT dengan menggunakan pengaturan BIOS untuk prosesor selama penyiapan BIOS, tetapi biasanya operasi cakupan server yang memengaruhi semua beban kerja yang berjalan di server. Anda mungkin mempertimbangkan untuk memisahkan beban kerja yang berjalan di lingkungan virtual, dari beban kerja yang akan mendapat manfaat dari peningkatan performa SMT di lingkungan sistem operasi fisik.

Dapatkan bantuan

Berkontribusi pada dokumentasi SQL

Tahukah Anda bahwa Anda dapat mengedit konten SQL sendiri? Jika Anda melakukannya, Anda tidak hanya membantu meningkatkan dokumentasi kami, tetapi Anda juga dikreditkan sebagai kontributor ke halaman.

Untuk informasi selengkapnya, lihat Cara berkontribusi pada dokumentasi SQL Server