You are not logged in.
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
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
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
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