Arch Linux Installation & Configuration Guide

1. Boot into Arch ISO

  1. Boot from USB and select the Arch Linux option

  2. Confirm internet connection:

    bash
    ping archlinux.org

2. Set Keyboard Layout (if needed)

bash
loadkeys us # or your layout, e.g., de, fr, etc.

3. Update System Clock

bash
timedatectl set-ntp true

4. Partition the Disk

Use fdisk or cfdisk (UEFI example):

bash
cfdisk /dev/sdX

Create:

  • EFI System Partition (e.g. 512M, type: EFI System)

  • Linux filesystem partition

5. Format Partitions

bash
mkfs.fat -F32 /dev/sdX1 # EFI
mkfs.ext4 /dev/sdX2 # Root

6. Mount Partitions

bash
mount /dev/sdX2 /mnt
mkdir /mnt/boot
mount /dev/sdX1 /mnt/boot

7. Install Base System

bash
pacstrap -K /mnt base linux linux-firmware nano

8. Generate fstab

bash
genfstab -U /mnt >> /mnt/etc/fstab

9. Chroot into New System

bash
arch-chroot /mnt

10. Set Timezone

bash
ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc

11. Localization

Uncomment your locale in /etc/locale.gen, e.g., en_US.UTF-8 UTF-8, then:

bash
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf

12. Set Hostname and Hosts File

bash
echo "myhostname" > /etc/hostname

Edit /etc/hosts:

plaintext
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname.localdomain myhostname

13. Set Root Password

bash
passwd

14. Install Bootloader (Systemd-boot for UEFI)

bash
bootctl install

Create loader config:

bash
nano /boot/loader/loader.conf
ini
default arch
timeout 3
console-mode max
editor no

Create entry:

bash
nano /boot/loader/entries/arch.conf
ini
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=PARTUUID=xxxxxx rw

Get PARTUUID:

bash
blkid /dev/sdX2

15. Enable Networking

bash
pacman -S networkmanager
systemctl enable NetworkManager

16. Add a User

bash
useradd -mG wheel yourusername
passwd yourusername

Enable sudo for wheel group:

bash
EDITOR=nano visudo
# Uncomment: %wheel ALL=(ALL:ALL) ALL

17. Install Essential Packages

bash
pacman -S base-devel git curl

18. Install a Desktop Environment (Optional)

Example: GNOME

bash
pacman -S gnome gdm gnome-tweaks
systemctl enable gdm

Or KDE:

bash
pacman -S plasma kde-applications sddm
systemctl enable sddm

Or XFCE:

bash
pacman -S xfce4 xfce4-goodies lightdm lightdm-gtk-greeter
systemctl enable lightdm

19. Exit, Unmount, and Reboot

bash
exit
umount -R /mnt
reboot

Remove installation media when rebooting.

[mai mult...]

How to install Windows Server 2022

What you’ll need

  • A valid Windows Server 2022 ISO file (available from Microsoft’s Evaluation Center or Volume Licensing)

  • A bootable USB drive (8GB or more) or a virtual machine platform (e.g., Hyper-V, VMware, VirtualBox)

  • A PC or server that meets the minimum system requirements:

    • 1.4 GHz 64-bit processor

    • 512 MB RAM (2 GB recommended for GUI)

    • 32 GB disk space

    • UEFI firmware with Secure Boot

    • Network adapter

[mai mult...]

PNY CS2150 2TB SSD

The only thing better than a super-fast SSD is a super-fast SSD that doesn’t need a heatsink to maintain its speed. The PNY CS2150 promises just that, using newer controller tech in a svelte package that makes it hard to believe that this level of performance is just a cart-click away.

PNY has been in the memory business for quite a long time, and with SSDs it’s probably best known for offering affordable second-look drives. This means drives that compete with big brand names using the same hardware at usually lower prices. Part of this strategy means having a smaller capacity range, especially with newer SSD hardware, to net sales with the most popular capacities.

Many other companies do this and often with larger ranges — Teamgroup comes to mind — but PNY has enough of a market presence that it doesn’t have to work too hard to compete. Right now, the CS2150 is one of the few options with efficient PCIe 5.0 hardware, and that lets the drive stand out even if it’s otherwise unremarkable and not priced aggressively.

This is a drive not only for those who want the PCIe 5.0 checkbox ticked — though that’s possibly an OEM PC builder’s dream — but by a wider audience who can appreciate the new technology. The drive is incredibly efficient and cool-running with excellent performance almost across the board. It can still hit the right notes in a 4.0 slot and is not limited to desktops as its power consumption and thermal output are both pretty low. Its main weaknesses are pricing and the lack of a 4TB SKU, but it’s positioned perfectly to be an excellent primary drive where you might not need that much space but still want top-tier

[mai mult...]

PCIe Lane Distribution

No matter what the socket or chipset or processor, PCIe slots meant for graphics cards are always given their own PCI Express lanes. In the older northbridge/southbridge chipset setup, PCI Express lanes meant for the graphics card always went through northbridge, which is the faster chipset. Normally northbridge gave 16 lanes in a x16, x8/x8, x8/x4/x4, or x4/x4/x4/x4 configuration. Higher end chipsets and processors will have more lanes. To summarize in a list:

  • Intel’s LGA115x processors
    • 16 lanes configurable in x16, x8/x8, or x8/x4/x4
  • Intel’s HEDT processors
    • Up to 40 lanes. Intel officially says this can either be a x16/x16/x8 or x8/x8/x8/x8/x8 configuration. Lower end processors will only have 28 lanes, which can only be x16 or up to x8/x8/x8.
  • AMD AM3+ and AM4 processors (FX and Ryzen)
    • 16 lanes configurable in x16, x8/x8, or x8/x4/x4
    • AMD claims that Ryzen processors have 24 PCIe lanes, but 4 lanes are dedicated to the chipset and 4 are for general purpose use. The general purpose use ones tend to be allocated for NVMe storage, but it really depends on the motherboard manufacturer.
  • AMD APUs
    • 4 or 8 lanes are provided for a single GPU configuration
    • Zen based APUs have 4 general purpose lanes
  • AMD Threadripper
    • Up to 60 PCIe lanes. AMD claims there are 64 total, but 4 lanes are dedicated to the chipset. However in some configurations, you may be limited down to 48 PCIe lanes for graphics if you are using NVMe storage.

The chipset provides additional PCI Express lanes for other use

  • Any time you see a smaller PCIe slot, like an x1 or x2 slot, they will route to the chipset. So if you see a motherboard with something like “8 PCIe lanes” or “20 PCIe lanes”, it’s coming from the chipset, not the CPU.
  • Peripherals all go through the chipset/southbridge’s PCIe lanes, not the processors/northbridge’s
  • Things like USB ports, SATA, Ethernet, etc. all go through the PCIe lanes that the chipset provides, if the chipset doesn’t provide the feature natively.
  • Pay attention to what NVMe does to your system
  • NVMe requires PCIe lanes; where it gets them from depends on the platform you go with.
  • Intel’s mainstream boards (LGA115x)
    • These take lanes from the chipset. This may disable other I/O like a PCIe slot or a couple of SATA ports
  • Intel’s HEDT boards (LGA 20xx)
    • These primarily take lanes from the CPU
  • AMD prior to AM4
    • These take lanes from the Southbridge
  • AMD mainstream boards (AM4)
    • All processors have 4 lanes dedicated for general use. This tends to be wired for NVMe storage, but it depends on the motherboard. If there is more than one M.2 slot for NVMe use, the other ones will use lanes from the chipset similar to Intel’s mainstream boards.
  • AMD HEDT
    • These primarily take lanes from the CPU.
[mai mult...]

Drop CSTM80 -review

The CSTM80 is — as you might expect from the name — a mechanical keyboard that’s designed to be customized. Just about everything, from the top plate to the case weight, can be swapped out, and Drop sells additional case plates, switch plates, keycaps, and case weights on its site. The keyboard comes with Gateron Brown Pro 3.0 or Milky Yellow KS3 switches and a polycarbonate top plate, as well as ABS keycaps with shine-through side legends. It’s not designed to be a gaming keyboard, necessarily, but it does boast a 1,000 Hz polling rate and N-key rollover. And its TKL layout is the perfect size for most gamers.

The CSTM80 is a wired mechanical gasket-mount keyboard with a tenkeyless (TKL) layout, which means it has a full function row, arrow keys, and a 3 by 2 navigation cluster. It also has an extra F13 function key, but no rotary knob.

The CSTM80 has a polycarbonate case with a decorative magnetic top case. The base keyboard comes with a black ABS top case and matching black ABS keycaps with shine-through side legends. Drop sells additional top cases in various colors, patterns, and materials, which you can find on their CSTM80 collection page.

The black case that the keyboard comes with is nicely made, if a bit boring, with a half-inch bezel that surrounds the keyboard and a chamfered edge. The keyboard measures 14.7 inches (374mm) wide by 5.8 inches (148mm) deep, and is 1.3 inches (34mm) thick at its thickest point. It weighs about 2.8 pounds (1,272g) with the included ABS top case and keycaps installed, but you can change the weight by adding a heavier top case or replacing the keyboard’s standard aluminum case weight with one of Drop’s custom options (replacing the case weight is slightly trickier than replacing the top case, as you’ll need to unscrew it from inside).

The keyboard measures about 0.74 inches (18.7mm) at the front, so it’s high enough that some people might want a wrist rest, though I didn’t feel the need to use one. The board has a typing angle of 6 degrees.

The back of the keyboard has four anti-slip rubber feet and a standard silver brushed aluminum keyboard weight, which is replaceable. In the box, the CSTM80 comes with a braided USB-C to USB-A cable, a keycap puller, a switch puller, optional Mac keycaps, and extra gaskets.

[mai mult...]

SteelSeries Aerox 9 Wireless -review

The Aerox 9 is a medium-large mouse measuring 5 inches (128mm) long, 2.6 (68mm) inches wide, and 1.6 inches (42mm) high. It weighs just 3.13 ounces (89g), which is fairly light for a mouse with so many buttons. It’s a good mouse for gamers with larger hands, but if your hands are on the smaller size it could be uncomfortable. The mouse wheel is sunk into the chassis and has a low profile, which improves access for scrolling but makes using the tilt function difficult.

Now for the most important part: the Aerox 9 has 18 programmable buttons, most of which are on the elongated 12-button side panel. The other buttons are the left/right primary buttons, the tilt wheel (left, right, middle click), and the DPI switch button behind the mouse wheel.

On the bottom of the mouse, you’ll find two large 100% PTFE mouse feet, plus a small PTFE circle around the sensor. This allows the mouse to freely glide around your mouse mat with minimal drag. The mouse is also touted as having an “Aqua Barrier” with an IP54 rating to protect its inner workings from dust, debris, and accidental drink spills (which we know all too well have dispatched a few peripherals to the bin).

In the box, you get the Aerox 9 mouse, a 6.5-foot (2m) braided USB-C to USB-A cable, a USB-C to USB-C wireless extension adapter, and the 2.4GHz wireless USB-C dongle.

[mai mult...]

Bottlenecking Guide

On the surface, a bottleneck is an imbalance or limitation of hardware. For example if you have a really strong graphics card but not a strong processor, then the processor could be spending too much time working on game logic to get around sending render commands to the GPU. A tale tale sign is you’re running an application and it’s not performing as fast as it could be.

Though “as fast as it could be” is kind of hard to objectively say so. If you’re playing a game, for instance, and you want to make sure the video card is working as fast as it can, you can check benchmarks of that video card against the game you’re playing from review sites. Usually they run on the top-end hardware, lowering the potential of a bottleneck.

Bottleneck issues usually show themselves in mainly two ways

  • The average performance isn’t as good as it should be
  • The frame rate isn’t consistent most of the time
  • Tools of the trade to figure out bottlenecks

GPU-z (https://www.techpowerup.com/gpuz/): This is useful for obtaining information about what’s going on in the GPU including clock speed, GPU load, and for some GPUs a performance cap reason. GPU-z also allows you to log data.

Task Manager: You can check out CPU load, system RAM usage, and tweak how many threads the application can use to further test. As of Windows 10 Fall Creator’s Update (1709), Task Manager includes a GPU usage section that can work as a substitute for GPU-z, although it’s less informative.

Performance Monitor (https://technet.microsoft.com/en-us/library/cc749249(v=ws.11).aspx): This is a tool built-in Windows that you can use to log data. I usually use this to log CPU usage since you can’t do this in Task Manager

FRAPS (http://www.fraps.com/): While it’s primary use is to monitor frame rate performance, it can also log frame times which can be useful for determining where performance drops.

  • The kinds of bottlenecking

Since bottlenecks are usually the result of some issue with hardware, let’s go over the various root causes. If you suspect you’re having a bottleneck issue, consider the application you’re running or the hardware setup you have to determine the root cause.

  • Maximum CPU loading

Symptom: All of the processor’s logical cores (or “threads”) are maxed out at 100%.

How to verify: Reducing the application’s processor affinity causes performance to tank linearly. i.e., If the application is maxing out 4 cores, disabling 1 reduces performance by about 25%.

How to fix: Upgrade the processor to something with more cores. While overclocking can help, it will not offer a lot of wiggle room.

Description: This is caused by the application needing so much of the processor’s time that it cannot send render commands to the GPU fast enough. For the most part, games will typically only process logic every so often on a fixed timer and logic often goes before graphics. So if the processor spends too much time processing the game logic, it doesn’t have enough time generating render commands. An example of this can be seen back in the days of 8-bit consoles. When too much action is going on the screen, the game slows down as the CPU needs more cycles to process logic before it can get to sending rendering commands.

Reliance on single core performance

Symptom: Either a few logical cores have high usage or the entire processor appears busy, but appears to flat line at a certain percentage.

How to verify: Reducing the application’s processor affinity does not cause performance to tank unless you really reduce the affinity. e.g., if the total processor load on say an 8 thread processor is only 60%, disabling one core does not affect performance at all.

How to fix: Increase the single core performance by either changing the processor with a higher IPC or increase the clock speed of the current processor

Description: This is caused by applications that cannot issue enough threads of work on average to saturate the processor. As a result, the processor can easily finish up the work but has to wait for the application to issue more threads. This can be caused by many things, usually due to over-reliance on synchronous software design.

Accessing storage

Symptom: Performance hiccups or outright drops for a few moments when moving around in the game’s environment. This is normally a problem in open-world games

How to verify: Go to different areas of the game, but do not backtrack (those areas are often left in RAM, so they load “instantly”). If you have a hard drive, you can hear it working while you play the game.

How to fix: This is most likely going to be an issue with the game being on slower storage media like hard drives. The easiest solution is to upgrade the storage to an SSD. If that’s not feasible, then defragging and having the defragger consolidate data should help. Windows’ built-in defragmenter should consolidate data.

Description: This is caused by the application needing something, but it hasn’t loaded it yet so it has to go to storage to retrieve it.

VRAM/RAM loading

Symptom: Performance starts off fine, but at some point it starts to stutter.

How to verify: Check if the VRAM/RAM usage is close to 100%

How to fix: For VRAM, lower resolution based settings (texture, shadow, screen) or turn off MSAA. For system RAM, get more RAM or close applications that you’re not using.

Description: Applications aren’t aware of how much actual RAM there is in the system, only the OS. As a result, when the application starts requesting more RAM and no more physical RAM is available, the OS starts evicting data from RAM onto storage. This takes a very long time in computer time and normally the application can’t do anything else while this is happening, causing hiccups.

[mai mult...]

Explanation of PCIe

Peripheral Component Interface – express (PCIe) is a bus that allows expansion cards inside your computer to communicate with other components. You use the PCIe system by putting cards into slots on the motherboard. These cards can be things like graphics cards, RAID cards, network cards, even co-processors.

Expansion cards can communicate with other system resources by using lanes Lanes are represented by an “x” followed by the number of lanes being used. Multiple lanes can be used by one card, and we call these configurations “modes”. The PCIe 3.0 specification allows for these modes and slots, in ascending order by bandwidth/length:

x1
x2
x4
x8
x16
x32 (for all intents and purposes this doesn’t actually exist).

When a card is placed into a slot and the computer booted up, the system negotiates with the card to determine which mode to operate in. If there is only one card in the system, and it is in a slot that supports it’s maximum mode, then the system will give it that mode, otherwise it will give it the maximum mode supported by the slot. For example: If a x16 card is in a x16 slot, then it will run in x16 mode. If, however, you place a x8 card in a x16 slot, then it will still run in x8 mode.

When multiple cards are used, things get a little more complicated, but it is eased by the fact that all cards can operate in any mode below their listed mode. Processors and motherboards each have a maximum number of lanes that they will support.

A PCIe lane is simply one channel of serial communication. The supported lane configurations are 1, 2, 4, 8, 16, and 32 (for all intents and purposes this doesn’t exist). Each configuration has it’s own slot. You can differentiate them by length, a 1 lane slot is the shortest while a 32 lane slot is the longest. There are also PCIe modes. A mode is simply how many lanes a card is actually using. It is independent from how many lanes are available to the card. Any card or slot may operate in any mode below it’s maximum mode, but must be in a slot that is the same physical size. Lanes and modes are denoted by an “x” preceding the number of lanes. For example: x1, x2, x4, x8, x16, or x32.

You can think of each lane like a two lane road (one lane in each direction). If we only have x1 lanes then we have a two lane road. If we have x2 lanes then we have a 4 lane highway. With x4 we have an 8 lane freeway. With x8 we have a 16 lane superhighway.

[mai mult...]