I am often switching between a MacBook and a Linux desktop. From time to time I invest a bit of energy to nudge MacBook UX to be more like the UX I have on my Arch Linux installation. I mostly use command line tools so common UX is not that far of a stretch.
This article will overview various tools that I have found useful for this task.
Kai klausant kokios radijo laidos pasigirsta mintis kuri sužavi, pridedu tą laidą į mėgstamų laidų sąrašą. Tas sąrašas po truputį pildosi, bet taip ir lieka tik man matomas.
I had recently acquired three Google WiFi pucks to upgrade the networking setup in my current apartment. I have had a pretty good experience with Google WiFi when I set it up at my parents home almost a year ago.
I have recently started switching between my Arch Linux PC and MacBook for daily development. I am striving to have as similar user experience between the two machines as possible.
TLDR: turning off HyperThreading in BIOS bumped up FPS in VR from ~60 during starts to solid 90.
I have just recently started iRacing and this week I was racing quite a bit in the Lime Rock Park with MX-5. Unfortunately I used to get around 60 FPS during starts and that is a very tense part of the race. Every frame counts during those moments. Since I have a pretty decent system, I though I should be able to get more FPS in VR. My relevant PC specs are:
Intel i7-4790K, 32GB Ram, Radeon VII and Samsung Odyssey+
First I turned down most of the graphics settings in iRacing. But even if turning off cubemaps and shadows would bump the FPS quite a bit, it was still far from solid 90. Then I noticed that some parts of the track are fine, but others are still choppy. Turning off Event Objects, Crowds and Grandstands helped with that a bit, but still no cigar.
Then after quite a bit of searching I noticed old forum threads regarding the multi-thread usage of iRacing almost three years ago, where setting CPU affinity of iRacing to a single core would help quite a bit. But that was acknowledged as a bug and was fixed in iRacing since. I tried setting affinity anyways, but I would get "Access Denied" (even when running with Admin rights) from Task Manager.
So finally today I took the plunge and rebooted to BIOS (or more correctly to UEFI F/W) and turned off HyperThreading and voila, 90 FPS throughout all the race I just did.
Here are the render stats from the excellent fpsVR of the last session before turning off HT and then with the HT turned off:
HT on
HT off
Delivered fps
84.47
88.76
GPU Frametimes median
7.7 ms
7.8 ms
GPU Frametimes 99th percentile
10.7 ms
9.5 ms
GPU frametime <11.1ms(vsync)
99.3%
99.7%
CPU frametime median
6.4 ms
6.2 ms
CPU frametime 99th percentile
10.1 ms
8.3 ms
CPU frametime 99.9th percentile
12 ms
10.2 ms
CPU frametime <11.1ms(vsync)
99.7%
99.9%
Max. SteamVR SS
152%
154%
Render resolution per eye by SteamVR settings
1758x2195
1770x2209
Render resolution per eye recommended
1426x1780
1426x1780
The median frametimes did not drop that much, but the 99.9th percentile (1 out of 1000) of CPU frametimes crucially did not reach 11ms - the amount of time available to render a frame, if GPU is pushing 90FPS.
Hope this is useful and helps to someone else as well.
Užmačiau keletą žmonių sakančių, kad bitkonai neturi vertės, niekas jų vertės nekontroliuoja ar panašiai. Manau tokie argumentai kyla dėl informacijos stygiaus. Šiek tiek paskaičiau ir sudėliojau keletą argumentų, kodėl bitkoinai turi vertę.
Recently I found a need to visualize the way our team works with the SVN repository. I really like GitHub network graphs, so I started looking for a way to draw custom ones.
Hey, how are you doing? (: Since there was a week between the end of the GSoC and the start of my studies, I decided to do some hobby hacking.
I have some remote (50 km away) appliances (electric heater) that I would like to control from wherever I am. The SMS service is a very compelling solution for this kind of problem. The main challenge is to figure out how to make a mobile phone to a relay that can switch on and off things.
while the code for generating charts for the status page and the profiling page was more or less trivial, code for the query results will be more complicated. This is because of the dynamic data structure that query results can have. You can get any number of rows and columns as a result. Also the data in the result is composite - there are strings, numbers, dates, etc.. Not everything is suitable for one chart or another.