MediaWiki API result

This is the HTML representation of the JSON format. HTML is good for debugging, but is unsuitable for application use.

Specify the format parameter to change the output format. To see the non-HTML representation of the JSON format, set format=json.

See the complete documentation, or the API help for more information.

{
    "batchcomplete": "",
    "continue": {
        "gapcontinue": "Wiki\u00b3",
        "continue": "gapcontinue||"
    },
    "warnings": {
        "main": {
            "*": "Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."
        },
        "revisions": {
            "*": "Because \"rvslots\" was not specified, a legacy format has been used for the output. This format is deprecated, and in the future the new format will always be used."
        }
    },
    "query": {
        "pages": {
            "237": {
                "pageid": 237,
                "ns": 0,
                "title": "ThinkPad:ArchLinux",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "{{DISPLAYTITLE:ThinkPad X220: Arch Linux Notes}}<metadesc>Information about running Arch Linux on a Lenovo ThinkPad X220.</metadesc>\n<div id=\"tocalign\">__TOC__</div>\n{{Back|ThinkPad|break=false}}\n{{SeeAlso|ArchLinux:Installation|Arch Linux Installation}}\nThis is a compilation of information I have scoured off the net in order to get my ThinkPad X220 running in the best possible configuration possible for my needs. If you need assistance installing Arch Linux, refer to the installation tutorial linked above.\n{{Note|I personally use [[aur:pikaur]] to manage all of the packages on my Arch system as it can interface with the regular repositories and the AUR. However, use whatever you are comfortable with.}}\n\nKeep in mind all of this is optional and none of it is by any means required and should be used on a case by case basis.\n\n={{Icon24|sitemap}} Pre-Install=\nMy personal ThinkPad X220 Arch Linux configuration includes LUKS on LVM. For this I did a security wipe of my SSD before the installation.\n\nBegin by downloading the [//download.lenovo.com/pccbbs/mobiles/83fd04ww.iso ThinkPad Drive Erase Utility], this is used for performing a security wipe on an SSD. Given that the ThinkPad X220 BIOS puts all SSDs into the frozen state on boot, which makes it challenging to use {{mono|hdparm}} to secure wipe them, this utility is the only safe way to perform a security wipe.\n\nNext use El Torito to convert the ISO downloaded into a bootable image file and {{mono|dd}} it to a USB disk (or other form of writable bootable media). If [[aur:geteltorito]] is not installed, do so before hand. Also make sure you specify the correct disk node to write the image to, you can use {{mono|lsblk}} to find the device node.\n{{Console|1=pikaur -S geteltorito|2=geteltorito.pl -o securewipe.img 83fd04ww.iso|3=sudo dd if{{=}}securewipe.img of{{=}}/dev/sdX bs{{=}}10M}}\nReboot the machine booting off the prepared media; follow the steps presented.\n{{Warning|Using the disk erase will prompt you with a code to write down and then enter after a reboot. DO NOT skip this part.|margin-bottom=true}}\n\n={{Icon24|sitemap}} Post-Install=\n=={{Icon|notebook}} Keeping the Boot Log on TTY1==\nIn order to stop Arch Linux from clearing the screen on boot we can add the {{mono|i915}} module to {{mono|MODULES}} inside of {{mono|/etc/mkinitcpio.conf}} and then regenerate our kernel images.\n{{Console|1=sudoedit /etc/mkinitcpio.conf}}\n{{margin}}\n{{Console|title=/etc/mkinitcpio.conf|1={{WhiteBold|MODULES{{=}}}}{{Green|\"&#8230; i915\"}}|prompt=false|margin=true}}\n{{margin}}\n{{Console|1=sudo mkinitcpio -p linux}}\nThen create a directory for getty overrides and create one with the following.\n{{Console|1=sudo mkdir /etc/systemd/system/getty@tty1.service.d|2=sudoedit /etc/systemd/system/getty@tty1.service.d/noclear.conf}}\n{{margin}}\n{{Console|title=/etc/systemd/system/getty@tty1.service.d/noclear.conf|prompt=false|1={{MagentaBold|[Service]}}<br/>{{Magenta|TTYVTDisallocate{{=}}}}no}}\n\n=={{Icon|notebook}} Traditional Device Node Names==\nTo translate the predictable device node names back into traditional ones, create the following. You can use the vim command {{mono|:r !cat /sys/class/net/wlp3s0/address}}, replacing the device node respectively, in order to get the MAC Address of each device pasted into vim.\n{{Console|title=/etc/udev/rules.d/10-network.rules|prompt=false|1={{BlueBold|SUBSYSTEM}}{{=}}{{=}}{{Green|\"net\"}}, {{BlueBold|ACTION}}{{=}}{{=}}{{Green|\"add\"}}, {{YellowBold|ATTR}}{{BlackBold|{}}{{YellowBold|address}}{{BlackBold|<nowiki>}</nowiki>}}{{=}}{{=}}{{Green|\"ETHERNET:MAC:ADDRESS\"}}, {{YellowBold|NAME}}{{=}}{{Green|\"wired0\"}}<br/>{{BlueBold|SUBSYSTEM}}{{=}}{{=}}{{Green|\"net\"}}, {{BlueBold|ACTION}}{{=}}{{=}}{{Green|\"add\"}}, {{YellowBold|ATTR}}{{BlackBold|{}}{{YellowBold|address}}{{BlackBold|<nowiki>}</nowiki>}}{{=}}{{=}}{{Green|\"WIFI:MAC:ADDRESS\"}}, {{YellowBold|NAME}}{{=}}{{Green|\"wifi0\"}}}}\n\n=={{Icon|notebook}} Console Fonts==\nEveryone have their own opinion, you can pull up a list with {{mono|ls /usr/share/kbd/consolefonts}}. To test out a font use {{mono|setfont}}, issue the command by itself to return to the default. You can also issue {{mono|showconsolefont}} to show a list of all available characters.\n{{Console|1=setfont -m 8859-2 gr928-8x16-thin|2=showconsolefont}}\nThis can be set at boot by adding it to {{mono|/etc/vconsole.conf}}.\n{{Console|title=/etc/vconsole.conf|1=FONT{{=}}gr928-8x16-thin<br>MAP{{=}}8859-2|prompt=false}}\n\n=={{Icon|notebook}} Auto-Login==\n{{margin}}\n{{Note|It would be advised to skip this section unless you use full disk encryption}}\nSince I am using full disk encryption and I am prompted for a password before I ever even get to login to the system there is no reason to have two separate logins. Therefore, to setup an auto-login on TTY1 edit the service.\n{{Console|1=sudo systemctl edit getty@tty1}}\nPaste in the following (changing the username accordingly):\n{{Console|1={{MagentaBold|[Service]}}<br/>{{Magenta|ExecStart{{=}}}}<br/>{{Magenta|ExecStart{{=}}}}-/usr/bin/agetty --autologin kyau --noclear %I $TERM|prompt=false}}\n\n=={{Icon|notebook}} Auto-Start Xorg on Graphical Boot==\nNext to get Xorg to auto-start only when systemd has reached a {{mono|graphical.target}} one can merely use a little bash magic. Add the following to the end of {{mono|~/.bashrc}}.\n{{Console|title=~/.bashrc|1=SYSTEMD_TARGET{{=}}`systemctl list-units --type target {{!}} g graphical {{!}} sed 's/    / /' {{!}} cut -d \" \" -f3`<br/>if [ \"$SYSTEMD_TARGET\" {{=}} \"active\" ]; then<br/>    if [ -z \"$DISPLAY\" ] && [ -n \"$XDG_VTNR\" ] && [ \"$XDG_VTNR\" -eq 1 ]; then<br/>        exec startx<br/>    fi<br/>fi|prompt=false}}\n\n=={{Icon|notebook}} Applications==\nPersonally, I keep a running backup of all of my [//github.com/kyau/dotfiles dotfiles] on GitHub along with a script to redo all the symbolic links. This makes the process as simple as:\n{{Console|<nowiki>git clone https://github.com/kyau/dotfiles && cd dotfiles && ./setup.sh && logout</nowiki>}}\nOnce Xorg is installed and my shell environment and config files are in place, I usually then run my application install script.\n{{GitHub|My current [//github.com/kyau/dotfiles/blob/master/pkgstrap pkgstrap].|margin-bottom=true}}\n\n={{Icon24|sitemap}} Hardware=\n=={{Icon|notebook}} Battery/CPU==\nInstall [[archwiki:TLP|TLP]] and related packages. Then enable it with systemd, don't forget to mask the required services (skip NetworkManager if you use this).\n{{Console|1=pikaur -S tlp tp_smapi acpi_call|2=sudo systemctl enable tlp|3=sudo systemctl enable tlp-sleep}}\n{{margin}}\n{{Console|1=sudo systemctl mask NetworkManager.service|2=sudo systemctl mask systemd-rfkill.service|3=sudo systemctl mask systemd-rfkill.socket}}\nThen edit the tlp config file to setup your TLP profile.\n{{GitHub|My current [//github.com/kyau/dotfiles/blob/master/system/etc/default/tlp tlp] config. I highly suggest looking at the default as it is fully commented.|margin-bottom=true}}\n{{Console|1=sudoedit /etc/defaults/tlp}}\nTLP status can be shown with the following:\n{{Console|1=sudo tlp-stat}}\nIt is also a good idea to install PowerTOP in order to monitor power usage.\n{{Console|1=pikaur -S powertop}}\n\n=={{Icon|notebook}} Fan Control==\nInstall [//aur.archlinux.org/packages/thinkfan/ thinkfan], default configuration is installed into {{mono|/usr/lib/modprobe.d/thinkpad_acpi.conf}}.\n{{Console|1=pikaur -S acpi lm_sensors thinkfan}}\nThen detect the hardware monitors chips that are available. Then re-enable the {{mono|thinkpad_acpi}} kernel module to update with the new config.\n{{Console|1=sudo sensors-detect|2=sudo modprobe thinkpad_acpi}}\nTo show the current thermal and cooling information use [[archwiki:ACPI Modules|acpi]].\n{{Console|1=sudo acpi -V}}\nTo show the current fan speed and level.\n{{Console|1=sudo cat /proc/acpi/ibm/fan}}\nMake the changes to point it to the right temperature reading, you can use {{mono|:r !sudo find /sys/devices -type f -name \"temp*_input\"}} in order to paste all the monitors into the file.\n{{GitHub|My current [//github.com/kyau/dotfiles/blob/master/system/etc/thinkfan.conf thinkfan.conf]|margin-bottom=true}}\n{{Console|1=sudoedit /etc/thinkfan.conf}}\nYou can verify the config is written correctly with the following command.\n{{Console|1=sudo thinkfan -n}}\nFinally enable and start thinkfan.\n{{Console|1=sudo systemctl enable thinkfan|2=sudo systemctl start thinkfan}}\n\n=={{Icon|notebook}} Kernel==\nSince the target system is a laptop the {{mono|watchdog}} timer is not needed. This is typically used on systems that have mission-critical roles (i.e. servers), or because of the lack of power reset (i.e. embedded devices). However, when running a desktop or laptop this feature is not needed. To disable it merely add {{mono|nowatchdog}} to your kernel options.\n\nEdit your rEFInd config to modify kernel options.\n{{Console|1=sudoedit /boot/EFI/BOOT/refind.conf}}\nAt this point your kernel options should looks something similar to the following:\n{{Console|title=/boot/EFI/BOOT/refind.conf|1=options {{Green|\"rd.luks.uuid{{=}}PARTUUID-sda1-root-LUKS-encryptedXXX rd.luks.name{{=}}PARTUUID-sda1-root-LUKS-encryptedXXX{{=}}x220}} \\<br/>        {{Green|lvm.lv{{=}}lvm/root rd.luks.options{{=}}discard root{{=}}/dev/mapper/x220-root resume{{=}}/dev/mapper/x220-swap}} \\<br/>        {{Green|rw add_efi_memmap initrc{{=}}\\intel-ucode.img}} {{Green|nowatchdog\"}}|prompt=false}}\nSince the watchdog is now disabled the kernel module is no longer required to auto-start, blacklist it by adding a config to {{mono|/etc/modprobe.d}}.\n{{Console|1=echo \"install iTCO_wdt /bin/false\" {{!}} sudo tee /etc/modprobe.d/thinkpad.conf}}\nThen add that config to the {{mono|FILES}} section inside of {{mono|/etc/mkinicpio.conf}}.\n{{Console|title=/etc/mkinitcpio.conf|1={{WhiteBold|FILES{{=}}}}{{Green|\"&#8230; /etc/modprobe.d/thinkpad.conf\"}}|prompt=false}}\nFinally rebuild the initramfs.\n{{Console|1=sudo mkinitcpio -p linux}}\n\n=={{Icon|notebook}} Keyboard & TrackPoint==\nFor ideal usage the Touchpad has been disabled in BIOS, the TrackPoint middle click is then disabled and the menu key between the right alt and ctrl is remapped to Super (ie. Windows Key).<br/>\n{{Console|title=~/.Xmodmap|1=pointer {{=}} 1 9 3 4 5 6 7 8 2 10<br/>keycode 135 {{=}} Super_R|prompt=false|margin=true}}\n{{margin}}\n{{Note|Remove the first line with {{mono|1 9 3 4..}} in order to only remap {{mono|Menu}}}}\nYou will still be able to use the middle TrackPoint button to hold and scroll but it will no longer annoy you by pasting the clipboard.<br/>\nDon't forget to load this when Xorg starts by inserting it into either {{mono|~/.xinitrc}} or the window manager's autostart file. Alternately it can be run from the prompt for immediate change.\n{{Console|1=xmodmap ~/.Xmodmap}}\nFor the TrackPoint we can max out the speed and up the sensitivity a bit, defaults are {{mono|97}} for speed and {{mono|200}} for sensitivity. For this create a systemd service to change them on boot.\n{{Console|title=/etc/systemd/system/trackpoint.path|1={{MagentaBold|[Unit]}}<br/>{{Magenta|Description{{=}}}}Lenovo Trackpoint Attributes<br/><br/>{{MagentaBold|[Path]}}<br/>{{Magenta|PathExists{{=}}}}/sys/devices/platform/i8042/serio1/speed<br/><br/>{{MagentaBold|[Install]}}<br/>{{Magenta|WantedBy{{=}}}}default.target|prompt=false|margin=true}}\n{{margin}}\n{{Console|title=/etc/systemd/system/trackpoint.service|1={{MagentaBold|[Unit]}}<br/>{{Magenta|Description{{=}}}}Set TrackPoint attributes<br/><br/>{{MagentaBold|[Service]}}<br/>{{Magenta|ExecStart{{=}}}}/usr/local/bin/trackpoint-config|prompt=false}}\nCreate the script to change the Sysfs rules.\n{{Console|title=/usr/local/bin/trackpoint|1={{BlackBold|#!/bin/bash}}<br/><br/>{{Blue|echo}} {{Green|200}} {{Magenta|&gt;}} /sys/devices/platform/i8042/serio1/speed<br/>{{Blue|echo}} {{Green|220}} {{Magenta|&gt;}} /sys/devices/platform/i8042/serio1/sensitivity|prompt=false|margin=true}}\n{{margin}}\n{{Console|1=sudo chmod a+x /usr/local/bin/trackpoint}}\nThen {{mono|enable}} and {{mono|start}} the service.\n{{Console|1=sudo systemctl enable trackpoint.path|2=sudo systemctl start trackpoint.path}}\n\n=={{Icon|notebook}} Removable Storage Encryption==\nUse an additional disk (USB, SD) in order to bolster the X220 disk space in addition to the two hard drive bays. This will take you through adding one with LUKS and {{mono|ext4}}.\n{{SeeAlso|ArchLinux:LUKS|Arch Linux: Encrypted Removable Storage}}\n\n=={{Icon|notebook}} SSD==\nFor SSD trimming there are a couple of options.\n====Weekly TRIM====\nFor most a weekly {{mono|fstrim}} should be most effective. This single command can take care of all of that.\n{{Console|1=sudo systemctl enable fstrim.timer}}\n====Continuous TRIM====\nFor continuous trimming add {{mono|,discard}} to the filesystem mount options for the root partition.\n{{Console|1=sudoedit /etc/fstab}}\n====LVM Trim====\nIf LVM it being run on the SSD, also enable trim in the {{mono|lvm.conf}}\n{{Console|title=/etc/lvm/lvm.conf|prompt=false|1=issue_discards {{=}} 1}}\n\n====S.M.A.R.T Monitoring====\nTo monitor the HDD or SSD installed you need to install the {{mono|smartmontools}} package.\n{{Console|1=pikaur -S smartmontools}}\nYou can view an overall health assessment with the following:\n{{Console|1=sudo smartctl -H /dev/sdX}}\nEnable and start the smartd systemd service to enable SMART monitoring for all disks.\n{{Console|1=sudo systemctl enable smartd}}\nWe can also have SMART email us and run a script for notifications on SMART errors.\n{{Console|1=sudo sed -i 's/^DEVICESCAN/DEVICESCAN -m address\\@domain.com -M exec \\/usr\\/local\\/bin\\/smartdnotify/' /etc/smartd.conf}}\nThen create the {{mono|/usr/local/bin/smartdnotify}} script (replacing both instances of ''kyau'' with your username).\n{{Console|title=/usr/local/bin/smartdnotify|prompt=false|1={{BlackBold|#!/bin/sh}}<br/>sudo -u kyau DISPLAY{{=}}:0 DBUS_SESSION_BUS_ADDRESS{{=}}unix:path{{=}}/run/user/kyau/bus notify-send \\<br/>             \"S.M.A.R.T Error ($SMARTD_FAILTYPE)\" \"$SMARTD_MESSAGE\" --icon{{=}}dialog-warning}}\n{{margin}}\n{{Console|1=sudo chmod +x /usr/local/bin/smartdnotify}}\nThen you can start the service.\n{{Console|1=sudo systemctl start smartd}}\n\n=={{Icon|notebook}} Video==\n{{margin}}\n{{Note|Most X220 laptops will not need this option, it has been left here for niche uses.}}\nTo fix the Intel HD 3000 graphics showing tearing during video playback or other fast movement on the screen.\n{{Console|title=/etc/X11/xorg.conf.d/20-intel.conf|1={{BlueBold|Section \"Device\"}}<br/>  {{Magenta|Identifier}} {{Green|\"Intel HD 3000 Graphics\"}}<br>  {{Magenta|Driver}} {{Green|\"intel\"}}<br/>  {{Magenta|Option}} {{Green|\"TearFree\" \"}}{{MagentaBold|true}}{{Green|\"}}<br/>{{BlueBold|EndSection}}|prompt=false}}\n\n={{Icon24|sitemap}} tmpfs=\n[[archwiki:tmpfs|tmpfs]] can be used to mount portions of your ram for use as temporary directories. The advantages of this are multi-fold: speed (RAM is much faster than any HDD or SSD), security (the files get wiped on boot, which removed the need for periodic cleanup) and finally, given that this is usually the most written data to the disk it will increase the life of your disk by reducing wear.\n\n=={{Icon|notebook}} Browser Profile==\nPutting the web browser's user profile directory onto {{mono|tmpfs}} can dramatically speed up the browser.\n\nTo get started install [[aur:profile-sync-daemon|profile-sync-daemond]].\n{{Console|1=pikaur -S profile-sync-daemon}}\nRun {{mono|profile-sync-daemon}} once to generate the user config.\n{{Console|1=psd}}\nEdit the configuration and specify which {{mono|BROWSERS}} you are using, I personally only use [[aur:google-chrome-stable|google-chrome-stable]]. It is also a good idea to enable overlayfs to decrease the memory footprint and increase sync speed.\n{{Console|1=USE_OVERLAYFS=\"yes\"<br/>BROWSERS=\"google-chrome\"|prompt=false}}\nWhen using overlayfs it is also required to give the program sudo rights, we can do this for only this program by using {{mono|visudo}}.\n{{Console|1=sudo visudo}}\nAdd a line that for overlayfs replacing my username with your own.\n{{Console|1=kyau ALL{{=}}(ALL) NOPASSWD: /usr/bin/psd-overlay-helper|prompt=false}}\nWith that set we can run {{mono|profile-sync-daemon}} one last time manually to preview what it will setup.\n{{Console|1=psd p}}\nProvided everything is as it should be, enable and then start the service.\n{{Console|1=systemctl --user enable psd|2=systemctl --user start psd}}\n\n=={{Icon|notebook}} Makepkg==\nMoving the build directory that {{mono|makepkg}} uses to build packages into the {{mono|/tmp}} folder will effectively move the package building temporary directory into memory.\n{{Console|title=/etc/makepkg.conf|1=BUILDDIR{{=}}/tmp/makepkg|prompt=false}}\n\n=={{Icon|notebook}} User Cache==\nIn order to speed up programs that store lots of temporary cached data on the local disk, put the user's cache directory into a {{mono|tmpfs}} ramdisk.\n\nInsert a line into the {{mono|fstab}} for your user.\n{{Console|title=/etc/fstab|1={{WhiteBold|tmpfs\t/home/kyau/.cache/}}\t{{Magenta|tmpfs}}\t{{BlueBold|defaults,noatime,mode{{=}}1777,nosuid,nodev,uid{{=}}kyau,gid{{=}}users}}\t{{GreenBold|0\t0}}|prompt=false}}\n\n[[Category:ThinkPad]]\n[[Category:Arch Linux]]"
                    }
                ]
            },
            "240": {
                "pageid": 240,
                "ns": 0,
                "title": "ThinkPad:Benchmarking",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "{{DISPLAYTITLE:ThinkPad X220: Benchmarking}}<metadesc>Benchmarking results on a Lenovo ThinkPad X220 running Arch Linux.</metadesc>\n<div id=\"tocalign\">__TOC__</div>\n{{UnderConstruction}}\n{{Back|ThinkPad|break=false}}\nFor basic testing I installed the following packages.\n{{Console|1=yaourt -S mesa-demos hdparm}}\n=={{Icon|notebook}} dd (cpu)==\n{{margin}}\n{{Console|1=dd if{{=}}/dev/zero bs{{=}}1G count{{=}}10 {{!}} md5sum}}<br/>\n{{Console|10+0 records in<br/>10+0 records out<br/>10737418240 bytes (11 GB, 10 GiB) copied, 20.3283 s, 528 MB/s<br/>2dd26c4d4799ebd29fa31e48d49e8e53  -|prompt=false}}\n{{Note|CPU Temperature peaked around 64C during the test.}}\n{{Console|1=dd if{{=}}/dev/zero bs{{=}}1G count{{=}}160 {{!}} md5sum}}<br/>\n{{Console|160+0 records in<br/>160+0 records out<br/>171798691840 bytes (172 GB, 160 GiB) copied, 324.407 s, 530 MB/s<br/>8f75e24931ccd52edfc887601023073b  -|prompt=false}}\n{{Note|CPU Temperature was a constant ~70C with peaks of 71-72C hitting as high as 74C near the end.}}\n=={{Icon|notebook}} dd (ssd write)==\n{{margin}}\n{{Console|1=dd if{{=}}/dev/zero of{{=}}$HOME/tempfile bs{{=}}1M count{{=}}1024 conv{{=}}fdatasync,notrunc status{{=}}progress}}<br/>\n{{Console|1024+0 records in<br/>1024+0 records out<br/>1073741824 bytes (1.1 GB, 1.0 GiB) copied, 9.93576 s, 108 MB/s|prompt=false}}\n=={{Icon|notebook}} glxgears (vsync)==\n{{margin}}\n{{Console|1=glxgears}}<br/>\n{{Console|Running synchronized to the vertical refresh.  The framerate should be<br/>approximately the same as the monitor refresh rate.<br/>304 frames in 5.0 seconds {{=}} 60.715 FPS<br/>301 frames in 5.0 seconds {{=}} 60.049 FPS<br/>301 frames in 5.0 seconds {{=}} 60.050 FPS<br/>301 frames in 5.0 seconds {{=}} 60.050 FPS<br/>301 frames in 5.0 seconds {{=}} 60.048 FPS<br/>301 frames in 5.0 seconds {{=}} 60.049 FPS<br/>301 frames in 5.0 seconds {{=}} 60.050 FPS<br/>301 frames in 5.0 seconds {{=}} 60.048 FPS<br/>301 frames in 5.0 seconds {{=}} 60.050 FPS<br/>301 frames in 5.0 seconds {{=}} 60.048 FPS<br/>301 frames in 5.0 seconds {{=}} 60.045 FPS<br/>301 frames in 5.0 seconds {{=}} 60.055 FPS<br/>301 frames in 5.0 seconds {{=}} 60.049 FPS<br/>301 frames in 5.0 seconds {{=}} 60.049 FPS<br/>|prompt=false}}\n=={{Icon|notebook}} hdparm (ssd read)==\n{{margin}}\n{{Console|1=sudo hdparm -Tt /dev/sda}}<br/>\n{{Console|/dev/sda:<br/> Timing cached reads:   12822 MB in  2.00 seconds {{=}} 6414.67 MB/sec<br/> Timing buffered disk reads: 790 MB in  3.00 seconds {{=}} 263.13 MB/sec|prompt=false}}\n=={{Icon|notebook}} systemd-analyze (boot speed)==\n{{margin}}\n{{Console|1=systemd-analyze plot > ~/boot.svg}}\n[[File:ThinkPad X220 Boot Analysis.svg|570px]]\n=={{Icon|notebook}} memtest86==\n{{margin}}\n{{Console|1=<mark class=\"green2\">'''PassMark MemTest86 V7.3 Free'''</mark><br/><mark class=\"black2\">'''Intel Core i7-2640M @ 2.80GHz'''</mark><br/>clk/Temp :  2791 MHz / 85C<br/>L1 Cache :   64K  20.76 GB/s<br/>L2 Cache :  256K  16.76 GB/s<br/>L3 Cache : 4096K  13.49 GB/s<br/>Memory   : 8085M  10.74 GB/s<br/>RAM Info : PC3-10600 DDR3 1332MHz / 9-9-9-24 / Samsung M471B5273CH0-CH9<br/>AddrMode: 64-bit<br/>Pass: 4 / 4<br/>Errors: 0<br/><br/><mark class=\"black2\">'''# Tests Passed: 17/17 (100%)'''</mark><br/>Lowest Error Address: N/A<br/>Highest Error Address: N/A<br/>Bits in Error Mask: 0000000000000000<br/>Bits in Error - Total: 0, Min: 0, Max: 0, Avg: 0<br/>Max Contiguous Errors: 0|prompt=false}}\n=={{Icon|notebook}} unixbench==\n'''BYTE UNIX Benchmarks (Version 5.1.3)'''<br/>\n''https://github.com/kdlucas/byte-unixbench''\n{|class=\"wikitable\"\n|'''System:'''\n|noc: GNU/Linux\n|-\n|'''OS:'''\n|GNU/Linux -- 4.11.9-1-ARCH -- #1 SMP PREEMPT Wed Jul 5 18:23:08 CEST 2017\n|-\n|'''Machine:'''\n|x86_64: unknown\n|-\n|'''Language:'''\n|en_US.utf8 (charmap{{=}}\"UTF-8\", collate{{=}}\"ANSI_X3.4-1968\")\n|-\n|'''CPUs:'''\n|Intel(R) Core(TM) i7-2640M CPU @ 2.80GHz (5584.6/5586.7/5585.0/5585.1 bogomips)<br/>Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel Virtualization\n|-\n|'''Uptime:'''\n|11:07:16 up 0 min, 1 user, load average: 0.29, 0.08, 0.02; runlevel unknown\n|}\n<br/>\n<table><tr><td>\n'''Benchmark Run: 4 CPUs; 1 parallel process'''<br/>\n''Time: 12:19:15 - 12:47:30; 28m 15s''\n{|class=\"wikitable\"\n!Test\n!Score\n!Unit\n!Time\n!Iters.\n!Baseline\n!Index\n|-\n|Dhrystone 2 using register variables\n|39166936.3\n|lps\n|10.0s\n|7\n|116700.0\n|3356.2\n|-\n|Double-Precision Whetstone\n|4415.1\n|MWIPS\n|10.9s\n|7\n|55.0\n|802.8\n|-\n|Execl Throughput\n|6603.8\n|lps\n|30.0s\n|2\n|43.0\n|1535.8\n|-\n|File Copy 1024 bufsize 2000 maxblocks\n|1225791.3\n|KBps\n|30.0s\n|2\n|3960.0\n|3095.4\n|-\n|File Copy 256 bufsize 500 maxblocks\n|371498.6\n|KBps\n|30.0s\n|2\n|1655.0\n|2244.7\n|-\n|File Copy 4096 bufsize 8000 maxblocks\n|2553151.3\n|KBps\n|30.0s\n|2\n|5800.0\n|4402.0\n|-\n|Pipe Throughput\n|2627484.7\n|lps\n|10.0s\n|7\n|12440.0\n|2112.1\n|-\n|Pipe-based Context Switching\n|232807.3\n|lps\n|10.0s\n|7\n|4000.0\n|582.0\n|-\n|Process Creation\n|9582.9\n|lps\n|30.0s\n|2\n|126.0\n|760.5\n|-\n|Shell Scripts (1 concurrent)\n|2591.2\n|lpm\n|60.0s\n|2\n|42.4\n|611.1\n|-\n|Shell Scripts (8 concurrent)\n|1428.7\n|lpm\n|60.0s\n|2\n|6.0\n|2381.2\n|-\n|System Call Overhead\n|3723276.5\n|lps\n|10.0s\n|7\n|15000.0\n|2482.2\n|-\n|colspan=\"6\"|'''System Benchmarks Index Score:'''\n|'''1656.7'''\n|}\n</td><td>\n'''Benchmark Run: 4 CPUs; 4 parallel processes'''<br/>\n''Time: 12:47:30 - 13:15:39; 28m 09s''\n{|class=\"wikitable\"\n!Test\n!Score\n!Unit\n!Time\n!Iters.\n!Baseline\n!Index\n|-\n|Dhrystone 2 using register variables\n|81918648.5\n|lps\n|10.0s\n|7\n|116700.0\n|7019.6\n|-\n|Double-Precision Whetstone\n|15164.7\n|MWIPS\n|10.0s\n|7\n|55.0\n|2757.2\n|-\n|Execl Throughput\n|13423.8\n|lps\n|29.9s\n|2\n|43.0\n|3121.8\n|-\n|File Copy 1024 bufsize 2000 maxblocks\n|1089129.6\n|KBps\n|30.0s\n|2\n|3960.0\n|2750.3\n|-\n|File Copy 256 bufsize 500 maxblocks\n|295566.4\n|KBps\n|30.0s\n|2\n|1655.0\n|1785.9\n|-\n|File Copy 4096 bufsize 8000 maxblocks\n|2874461.6\n|KBps\n|30.0s\n|2\n|5800.0\n|4956.0\n|-\n|Pipe Throughput\n|5356864.3\n|lps\n|10.0s\n|7\n|12440.0\n|4306.2\n|-\n|Pipe-based Context Switching\n|911864.7\n|lps\n|10.0s\n|7\n|4000.0\n|2279.7\n|-\n|Process Creation\n|31946.9\n|lps\n|30.0s\n|2\n|126.0\n|2535.5\n|-\n|Shell Scripts (1 concurrent)\n|10425.9\n|lpm\n|60.0s\n|2\n|42.4\n|2458.9\n|-\n|Shell Scripts (8 concurrent)\n|1510.2\n|lpm\n|60.1s\n|2\n|6.0\n|2517.0\n|-\n|System Call Overhead\n|8464354.2\n|lps\n|10.0s\n|7\n|15000.0\n|5642.9\n|-\n|colspan=\"6\"|'''System Benchmarks Index Score:'''\n|'''3227.7'''\n|}\n</td></tr></table>\n=={{Icon|notebook}} eBay Battery==\n{{margin}}\n{{Console|--- TLP 1.0 --------------------------------------------<br/><br/>+++ ThinkPad Battery Features<br/>tp-smapi   {{=}} active<br/>tpacpi-bat {{=}} active<br/><br/>+++ ThinkPad Battery Status: BAT0 (Main / Internal)<br/>/sys/devices/platform/smapi/BAT0/manufacturer               {{=}} LGC<br/>/sys/devices/platform/smapi/BAT0/model                      {{=}} 45N1029<br/>/sys/devices/platform/smapi/BAT0/manufacture_date           {{=}} 2013-11-05<br/>/sys/devices/platform/smapi/BAT0/first_use_date             {{=}} 2017-07-19<br/>/sys/devices/platform/smapi/BAT0/cycle_count                {{=}}      1<br/>/sys/devices/platform/smapi/BAT0/temperature                {{=}}     28 [\u00b0C]<br/>/sys/devices/platform/smapi/BAT0/design_capacity            {{=}}  93240 [mWh]<br/>/sys/devices/platform/smapi/BAT0/last_full_capacity         {{=}}  93230 [mWh]<br/>/sys/devices/platform/smapi/BAT0/remaining_capacity         {{=}}  93230 [mWh]<br/>/sys/devices/platform/smapi/BAT0/remaining_percent          {{=}}    100 [%]<br/>/sys/devices/platform/smapi/BAT0/remaining_running_time_now {{=}} not_discharging [min]<br/>/sys/devices/platform/smapi/BAT0/remaining_charging_time    {{=}} not_charging [min]<br/>/sys/devices/platform/smapi/BAT0/power_now                  {{=}}      0 [mW]<br/>/sys/devices/platform/smapi/BAT0/power_avg                  {{=}}      0 [mW]<br/>/sys/devices/platform/smapi/BAT0/state                      {{=}} idle<br/><br/>tpacpi-bat.BAT0.startThreshold                              {{=}}     75 [%]<br/>tpacpi-bat.BAT0.stopThreshold                               {{=}}    100 [%]<br/>tpacpi-bat.BAT0.forceDischarge                              {{=}}      0<br/><br/>Charge                                                      {{=}}  100.0 [%]<br/>Capacity                                                    {{=}}  100.0 [%]|prompt=false}}\n\n[[Category:ThinkPad]]"
                    }
                ]
            }
        }
    }
}