You are not logged in.

#1 2022-07-09 21:14:43

benm
Member
Registered: 2021-03-28
Posts: 90

Root SSD reporting busy 90-107% when almost nothing is being done

My system is lagging with sometimes 10+ second lags between actions

Running sudo atop shows me that sda is busy with 90-107% utilization when running almost nothing besides plasma and a few tray apps and system services. During this period of "busy" utilization, the write is much higher than the read.

Example values:

sudo atop
sda | busy | 101% | read 4 | write 205 | MBr/s 0.3 | MBw/s 2.8 | avio 48.2 ms | 

This, however, is not constant, as there are times when the sda "busy" percentage drops to expected levels of about 5% and performance returns. When poor performance occurs, you can reboot and generally the problem persists.

I tried checking kernel tasks by running

sudo perf record -g -a sleep 10
sudo perf report

The results were mostly baloo, which is the KDE indexing service. I disabled the service altogether using balooctl suspend. Then I went to the KDE system settings menu and disabled file indexing altogether. This did not solve or change anything.

To be extra sure, I've used htop and bashtop to confirm that memory and swap is well below 50% and CPU utilization is below 20%. nvtop confirms that GPU and graphics memory are both below 10%.

Model of the SSD drive: CT1000BX500SSD1
This drive is only 4 months old.

Current storage capacity is 417 GiB Used, 451 GiB Free.

Are there any suggestions for what I can check to fix these performance problems?

Offline

#2 2022-07-11 20:54:38

xerxes_
Member
Registered: 2018-04-29
Posts: 942

Re: Root SSD reporting busy 90-107% when almost nothing is being done

Post output of commands (assuming sda is your SSD drive, all commands with admin rights):

hdparm -iI /dev/sda
smartctl -a /dev/sda
systemctl list-unit-files --state enabled

and when your SSD appear to be busy:

journalctl -b -g sda

Maybe you have somehow auto trim enabled or it is something wrong with your drive? How long your drive may be busy?

Last edited by xerxes_ (2022-07-11 21:02:05)

Offline

#3 2022-07-14 12:29:35

benm
Member
Registered: 2021-03-28
Posts: 90

Re: Root SSD reporting busy 90-107% when almost nothing is being done

I've been traveling and away from my computer, so I entered with ssh to use sudo atop and the disk was not busy. As a test, I ran sudo pacman -Syu to get disk activity and I was able to observe the disk activity spike to over 100% during the install phase of pacman -Syu. During that period, it was experiencing the same bottleneck behavior I saw before. I'm not sure if there is a real difference or if this is a fluke. Here are the results of the commands.

hdparm:

/dev/sda:

 Model=CT1000BX500SSD1, FwRev=M6CR030, SerialNo=2203E5FEE7EF
 Config={ Fixed }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=unknown, BuffSize=unknown, MaxMultSect=1, MultSect=off
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=1953525168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio3 pio4 
 DMA modes:  mdma0 mdma1 mdma2 
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: unknown:  ATA/ATAPI-3,4,5,6,7

 * signifies the current active mode


ATA device, with non-removable media
	Model Number:       CT1000BX500SSD1                         
	Serial Number:      2203E5FEE7EF        
	Firmware Revision:  M6CR030 
	Media Serial Num:   
	Media Manufacturer: 
	Transport:          Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
	Used: unknown (minor revision code 0x011b) 
	Supported: 10 9 8 7 6 5 
	Likely used: 10
Configuration:
	Logical		max	current
	cylinders	16383	16383
	heads		16	16
	sectors/track	63	63
	--
	CHS current addressable sectors:    16514064
	LBA    user addressable sectors:   268435455
	LBA48  user addressable sectors:  1953525168
	Logical  Sector size:                   512 bytes
	Physical Sector size:                   512 bytes
	Logical Sector-0 offset:                  0 bytes
	device size with M = 1024*1024:      953869 MBytes
	device size with M = 1000*1000:     1000204 MBytes (1000 GB)
	cache/buffer size  = unknown
	Form Factor: 2.5 inch
	Nominal Media Rotation Rate: Solid State Device
Capabilities:
	LBA, IORDY(can be disabled)
	Queue depth: 32
	Standby timer values: spec'd by Standard, no device specific minimum
	R/W multiple sector transfer: Max = 1	Current = 1
	DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
	     Cycle time: min=120ns recommended=120ns
	PIO: pio0 pio1 pio2 pio3 pio4 
	     Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
	Enabled	Supported:
	   *	SMART feature set
	    	Security Mode feature set
	   *	Power Management feature set
	   *	Write cache
	   *	Look-ahead
	   *	WRITE_BUFFER command
	   *	READ_BUFFER command
	   *	NOP cmd
	   *	DOWNLOAD_MICROCODE
	   *	48-bit Address feature set
	   *	Mandatory FLUSH_CACHE
	   *	FLUSH_CACHE_EXT
	   *	SMART self-test
	   *	General Purpose Logging feature set
	   *	WRITE_{DMA|MULTIPLE}_FUA_EXT
	   *	64-bit World wide name
	   *	{READ,WRITE}_DMA_EXT_GPL commands
	   *	Segmented DOWNLOAD_MICROCODE
	   *	Gen1 signaling speed (1.5Gb/s)
	   *	Gen2 signaling speed (3.0Gb/s)
	   *	Gen3 signaling speed (6.0Gb/s)
	   *	Native Command Queueing (NCQ)
	   *	Phy event counters
	   *	READ_LOG_DMA_EXT equivalent to READ_LOG_EXT
	   *	DMA Setup Auto-Activate optimization
	    	Device-initiated interface power management
	   *	Software settings preservation
	    	Device Sleep (DEVSLP)
	   *	SANITIZE feature set
	   *	BLOCK_ERASE_EXT command
	   *	DOWNLOAD MICROCODE DMA command
	   *	WRITE BUFFER DMA command
	   *	READ BUFFER DMA command
	   *	Data Set Management TRIM supported (limit 8 blocks)
Security: 
	Master password revision code = 65534
		supported
	not	enabled
	not	locked
		frozen
	not	expired: security count
		supported: enhanced erase
	6min for SECURITY ERASE UNIT. 6min for ENHANCED SECURITY ERASE UNIT.
Logical Unit WWN Device Identifier: 500a0751e5fee7ef
	NAA		: 5
	IEEE OUI	: 00a075
	Unique ID	: 1e5fee7ef
Device Sleep:
	DEVSLP Exit Timeout (DETO): 90 ms (drive)
	Minimum DEVSLP Assertion Time (MDAT): 26 ms (drive)
Checksum: correct

smartctl:

smartctl 7.3 2022-02-28 r5338 [x86_64-linux-5.18.10-arch1-1] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Crucial/Micron Client SSDs
Device Model:     CT1000BX500SSD1
Serial Number:    2203E5FEE7EF
LU WWN Device Id: 5 00a075 1e5fee7ef
Firmware Version: M6CR030
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
TRIM Command:     Available
Device is:        In smartctl database 7.3/5319
ATA Version is:   ACS-3 T13/2161-D revision 4
SATA Version is:  SATA 3.3, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Wed Jul 13 21:19:32 2022 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever 
					been run.
Total time to complete Offline 
data collection: 		(  120) seconds.
Offline data collection
capabilities: 			 (0x11) SMART execute Offline immediate.
					No Auto Offline data collection support.
					Suspend Offline collection upon new
					command.
					No Offline surface scan supported.
					Self-test supported.
					No Conveyance Self-test supported.
					No Selective Self-test supported.
SMART capabilities:            (0x0002)	Does not save SMART data before
					entering power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine 
recommended polling time: 	 (   2) minutes.
Extended self-test routine
recommended polling time: 	 (  10) minutes.

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   100   100   000    Pre-fail  Always       -       0
  5 Reallocate_NAND_Blk_Cnt 0x0032   100   100   010    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       2778
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       25
171 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       0
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
173 Ave_Block-Erase_Count   0x0032   098   098   000    Old_age   Always       -       31
174 Unexpect_Power_Loss_Ct  0x0032   100   100   000    Old_age   Always       -       17
180 Unused_Reserve_NAND_Blk 0x0033   100   100   000    Pre-fail  Always       -       13
183 SATA_Interfac_Downshift 0x0032   100   100   000    Old_age   Always       -       0
184 Error_Correction_Count  0x0032   100   100   000    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
194 Temperature_Celsius     0x0022   069   052   000    Old_age   Always       -       31 (Min/Max 19/48)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
197 Current_Pending_ECC_Cnt 0x0032   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   100   100   000    Old_age   Always       -       0
202 Percent_Lifetime_Remain 0x0030   098   098   001    Old_age   Offline      -       2
206 Write_Error_Rate        0x000e   100   100   000    Old_age   Always       -       0
210 Success_RAIN_Recov_Cnt  0x0032   100   100   000    Old_age   Always       -       0
246 Total_LBAs_Written      0x0032   100   100   000    Old_age   Always       -       11341072928
247 Host_Program_Page_Count 0x0032   100   100   000    Old_age   Always       -       354408529
248 FTL_Program_Page_Count  0x0032   100   100   000    Old_age   Always       -       1725562272
249 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       0
250 Read_Error_Retry_Rate   0x0032   100   100   000    Old_age   Always       -       504000
251 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       0
252 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       0
253 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       4
254 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       270
223 Unkn_CrucialMicron_Attr 0x0032   100   100   000    Old_age   Always       -       13

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

Selective Self-tests/Logging not supported

systemctl:

UNIT FILE                          STATE   VENDOR PRESET
cups.path                          enabled disabled
avahi-daemon.service               enabled disabled
bluetooth.service                  enabled disabled
cups-browsed.service               enabled disabled
cups.service                       enabled disabled
dhcpcd.service                     enabled disabled
fail2ban.service                   enabled disabled
getty@.service                     enabled enabled
libvirtd.service                   enabled disabled
NetworkManager-dispatcher.service  enabled disabled
NetworkManager-wait-online.service enabled disabled
NetworkManager.service             enabled disabled
sddm.service                       enabled disabled
sshd.service                       enabled disabled
avahi-daemon.socket                enabled disabled
cups.socket                        enabled disabled
libvirtd-ro.socket                 enabled disabled
libvirtd.socket                    enabled disabled
virtlockd.socket                   enabled disabled
virtlogd.socket                    enabled disabled
remote-fs.target                   enabled enabled
pamac-cleancache.timer             enabled disabled

22 unit files listed.

journalctl:

Jul 09 16:27:34 solomon kernel: sd 2:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
Jul 09 16:27:34 solomon kernel: sd 2:0:0:0: [sda] Write Protect is off
Jul 09 16:27:34 solomon kernel: sd 2:0:0:0: [sda] Mode Sense: 00 3a 00 00
Jul 09 16:27:34 solomon kernel: sd 2:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Jul 09 16:27:34 solomon kernel:  sda: sda1
Jul 09 16:27:34 solomon kernel: sd 2:0:0:0: [sda] Attached SCSI disk
Jul 09 16:27:34 solomon kernel: EXT4-fs (sda1): mounted filesystem with ordered data mode. Quota mode: none.
Jul 09 16:27:34 solomon kernel: EXT4-fs (sda1): re-mounted. Quota mode: none.
Jul 13 21:18:51 solomon dbus-daemon[509]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.343' (uid=0 pid=681823 comm="sudo hdparm -iI /dev/sda")
Jul 13 21:18:59 solomon sudo[681823]:      ben : TTY=pts/10 ; PWD=/home/ben ; USER=root ; COMMAND=/usr/bin/hdparm -iI /dev/sda
Jul 13 21:19:32 solomon dbus-daemon[509]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.346' (uid=0 pid=683898 comm="sudo smartctl -a /dev/sda")
Jul 13 21:19:32 solomon sudo[683898]:      ben : TTY=pts/10 ; PWD=/home/ben ; USER=root ; COMMAND=/usr/bin/smartctl -a /dev/sda
Jul 13 21:28:50 solomon dbus-daemon[509]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.348' (uid=0 pid=697751 comm="sudo journalctl -b -g sda")
Jul 13 21:28:59 solomon sudo[697751]:      ben : TTY=pts/9 ; PWD=/home/ben ; USER=root ; COMMAND=/usr/bin/journalctl -b -g sda
Jul 13 21:30:00 solomon dbus-daemon[509]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.349' (uid=0 pid=699508 comm="sudo journalctl -b -g sda")
Jul 13 21:30:00 solomon sudo[699508]:      ben : TTY=pts/9 ; PWD=/home/ben ; USER=root ; COMMAND=/usr/bin/journalctl -b -g sda
Jul 13 21:30:20 solomon dbus-daemon[509]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.350' (uid=0 pid=700020 comm="sudo journalctl -b -g sda")
Jul 13 21:30:20 solomon sudo[700020]:      ben : TTY=pts/9 ; PWD=/home/ben ; USER=root ; COMMAND=/usr/bin/journalctl -b -g sda

Offline

#4 2022-07-14 14:58:07

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 68,329

Re: Root SSD reporting busy 90-107% when almost nothing is being done

https://wiki.archlinux.org/title/Improving_performance#Kernel's_I/O_schedulers
Afaik baloo is supposed to use ionice, but that doesn't work w/ every scheduler, https://wiki.archlinux.org/title/Improv … ith_ionice

mandb and updatedb can bang the drive somewhat and there're frequent timers for them (what's not necessary for at least mandb, you just have to update the database yourself somewhen after installing a manpage - and updatedb would belong to mlocate, which is kinda redundant w/ baloo)

Offline

Board footer

Powered by FluxBB