Konfigurasi server: ambang biaya untuk paralelisme
Berlaku untuk: SQL Server
Artikel ini menjelaskan cara mengonfigurasi cost threshold for parallelism
opsi konfigurasi server di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL. Opsi cost threshold for parallelism
menentukan ambang di mana SQL Server membuat dan menjalankan paket paralel untuk kueri. SQL Server membuat dan menjalankan rencana paralel untuk kueri hanya ketika perkiraan biaya untuk menjalankan rencana seri untuk kueri yang sama lebih tinggi dari nilai yang ditetapkan dalam cost threshold for parallelism
. Biaya mengacu pada perkiraan biaya yang diperlukan untuk menjalankan rencana serial pada konfigurasi perangkat keras tertentu, dan bukan satuan waktu. Opsi cost threshold for parallelism
dapat diatur ke nilai apa pun dari 0 hingga 32767.
Batasan
Biaya mengacu pada unit biaya abstrak dan bukan satuan perkiraan waktu. Hanya diatur cost threshold for parallelism
pada multiproscessor simetris.
SQL Server mengabaikan cost threshold for parallelism
nilai dalam kondisi berikut:
Komputer Anda hanya memiliki satu prosesor logis.
Hanya satu prosesor logis yang tersedia untuk SQL Server karena
affinity mask
opsi konfigurasi.Opsi
max degree of parallelism
diatur ke1
.
Prosesor logis adalah unit dasar perangkat keras prosesor yang memungkinkan sistem operasi mengirimkan tugas atau menjalankan konteks utas. Setiap prosesor logis hanya dapat menjalankan satu konteks utas pada satu waktu. Inti prosesor adalah sirkuit yang mendekode dan menjalankan instruksi. Inti prosesor mungkin berisi satu atau beberapa prosesor logis. Kueri Transact-SQL berikut dapat digunakan untuk mendapatkan informasi CPU untuk sistem.
SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs,
cpu_count AS logicalCPUs
FROM sys.dm_os_sys_info;
Rekomendasi
Opsi ini adalah opsi lanjutan dan harus diubah hanya oleh administrator database berpengalaman atau profesional SQL Server bersertifikat.
Dalam kasus tertentu, paket paralel mungkin dipilih meskipun paket biaya kueri kurang dari nilai saat ini cost threshold for parallelism
. Ini dapat terjadi karena keputusan untuk menggunakan rencana paralel atau serial didasarkan pada perkiraan biaya yang disediakan sebelumnya dalam proses pengoptimalan. Untuk informasi selengkapnya, lihat Panduan Arsitektur Pemrosesan Kueri.
Meskipun nilai 5
default memadai untuk sebagian besar sistem, nilai yang berbeda mungkin sesuai. Lakukan pengujian aplikasi dengan nilai yang lebih tinggi dan lebih rendah jika diperlukan untuk mengoptimalkan performa aplikasi.
Izin
Jalankan izin tanpa sp_configure
parameter atau hanya dengan parameter pertama yang diberikan kepada semua pengguna secara default. Untuk menjalankan sp_configure
dengan kedua parameter untuk mengubah opsi konfigurasi atau untuk menjalankan RECONFIGURE
pernyataan, pengguna harus diberikan ALTER SETTINGS
izin tingkat server. Izin ALTER SETTINGS
secara implisit dipegang oleh peran server tetap sysadmin dan serveradmin .
Menggunakan SQL Server Management Studio
Di Object Explorer, klik kanan server dan pilih Properti.
Pilih simpul Tingkat Lanjut .
Di bawah Paralelisme, ubah
cost threshold for parallelism
opsi ke nilai yang Anda inginkan. Ketik atau pilih nilai dari 0 hingga 32767.
Menggunakan Transact-SQL
Contoh ini menunjukkan cara menggunakan sp_configure untuk mengatur nilai cost threshold for parallelism
opsi ke 10
.
USE master;
GO
EXECUTE sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXECUTE sp_configure 'cost threshold for parallelism', 10;
GO
RECONFIGURE;
GO
EXECUTE sp_configure 'show advanced options', 0;
GO
RECONFIGURE;
GO
Untuk informasi selengkapnya, lihat Opsi konfigurasi server.
Tindak lanjut: Setelah Anda mengonfigurasi ambang biaya untuk opsi paralelisme
Pengaturan berlaku segera tanpa memulai ulang server.