JavaScript disabled! You'll have a better experience here if you enable it.

Apr 072014
 

thTweaking Windows 8.1 has been updated for Update 1.
Get it while it’s hot!
PLEASE help spread the word!

If you ordered the printable PDF in the past you’re due a free update! Contact me:
– Either reply to the original email, or
Email me and provide the email address you ordered with or forward your receipt.

Haven’t ordered the printable PDF yet? Grab it here.

Apr 032014
 

win8logoAs many of you know Windows 8.1 Update 1 was released to MSDN. Regular users will get it via Windows Update starting April 8th.
Hopefully some time after that ISO’s for regular users will become available, um, “officially”.
I decided to do a clean install via the x64 ISO using the following steps. Continue reading »

Mar 242014
 

xp_logoeXPired

Do not go gentle into that good night,
Old age should burn and rave at close of day;
Rage, rage against the dying of the light.
                                                 Dylan Thomas

***Last updated, 27AUG2014. This guide is now FINAL

The End?
Microsoft Windows XP support ended on April 8, 2014. This basically means no more security updates via Windows Update.
I don’t think Windows XP is going to go gentle into that good night. There are several reasons for this:
Die Hards – Many people are just plain “used to” XP. I hear from them all the time. You’ll pry XP from their cold, dead fingers.
Application Compatibility – Many businesses both big and small have critical apps that, for one reason or another, don’t run on post XP operating systems.
Those Old Games – Some of those old games just don’t run right on post XP operating systems. Some don’t run at all (especially on 64-bit).
XP Will Be Updated – Many large corporations are paying Microsoft to continue to privately provide security updates for XP. Everything Microsoft does finds its way to the internet. I think these patches will too.

Windows XP End of Support

Is Windows XP Secure?
Opinion, I am not a security expert. Just your average Geek.
Yes, and No. It depends on many factors including how you use your XP computer and what other software is installed.
At its core I don’t believe XP has been “secure” for a long time. Microsoft states, “Windows 8 is 6 times more secure than Windows XP and 3 times more secure than Windows 7.” I don’t know about “6 times more secure” but there is no denying that each version of Windows is more secure than the last. This is because of security improvements in both code and hardware. So, I guess the question should not be “is XP secure” (it isn’t),  but “is XP secure enough for your needs.”
Personally, I haven’t used XP for anything except research and a game or two since Windows 7 was released in July, 2009.

XPocalypse?
Many a security “experts” and Windows pundits have opined that hackers are just sitting on exploits waiting for XP’s security support to end. That may be true, I don’t know. I can say that this apocalyptic forecast is brought to you by the same folks that warned of the Y2K disaster.

Vendor Support Going, Going…
Many software companies have stopped updating their apps for XP. The majority of hardware makers have long since ceased support for XP era hardware. For example, supplies of AGP video cards and IDE drives are dwindling. Drivers will cease to be updated and new hardware may not support XP at all.

Should You Continue To Use XP?
Only you can make that decision.
Outside of using it in a virtual machine, my advice would be, “No way in hell.” But I’ve been saying that for years.
Caveat – There is nothing wrong with using an XP machine (or VM) that is completely disconnected from any network.

Quick Steps That Can Make XP A Little More Secure
1 – Uninstall Java and Flash. Keep all other programs updated
2 – If you don’t need to use the web on that machine, disable the internet connection until needed. Use a thumb drive to transfer files.***
3 – For the love of all that is Geeky, do not use Internet Explorer. If you must use the web use Google Chrome or better yet Firefox with NoScript.
4 – Anti-Virus. If your XP computer connects to the internet I highly recommend you use an anti-virus.
Do not use Microsoft Security Essentials as support will end ( as of this writing indications are April, 2015).
No recommendation here. Check AV-Comparatives for the latest rankings.
DO NOT any programs you saw on TV claiming to “keep XP secure”. That’s complete B.S.

***  There are various ways to block the internet and keep your machine on your home network. You can use 3rd party firewalls and some home routers are configurable. A quick way is to manually set the IP address / subnet mask of the machine and leave the gateway empty:
Ditch The Internet, Keep Your LAN connection
While not a perfect solution you can block the machine from the internet and stay on your home network.
This will require you to manually configure networked printers and computers
First, find your IP address info;
– Press the Windows + R keys and type cmd and press the Enter key
– In the command window type ipconfig
– Use the addresses in the IP Address and Subnet Mask for the steps below.
To configure TCP/IP for static addressing:
1. Open Network Connections
2. Right-click the network connection you want to configure, and then click Properties.
3. On the General tab (for a local area connection) or the Networking tab (all other connections), click the Internet Protocol (TCP/IP) component, and then click Properties.
4. Click Use the following IP address:
– For a local area connection, in IP address, Subnet mask, and Default gateway, type the IP address, subnet mask, leave the default gateway addresses blank.
Note
– To open Network Connections, click Start, click Control Panel, click Network and Internet Connections, and then click Network Connections.
– You must be logged on as an administrator or a member of the Administrators group in order to complete this procedure. If your computer is connected to a network, network policy settings may also prevent you from completing this procedure.


Installing XP After End of Support
See: The Right Way To Install XP
*Note – I prefer Nlite for this. This allows me to slipstream SP3, post-sp3 updates, drivers and tweaks.

Before Installing – Prepare Your XP CD
1 – Copy and Paste the contents of your XP CD to a folder called XP. Anywhere is fine just remember the location. For this guide I will use drive Z.
2 – Download Service Pack 3 (see Downloads section above). Then extract it:
– Either use 7-Zip or
– Manually by opening a command window (admin) and entering
windowsxp-kb936929-sp3-x86-enu.exe -x:Z:\xp
Press the Enter key (Z is the drive that you copied your XP CD to.
3 – Slipstream SP3 and Make and ISO
– Manually. See Paul Thurrott – Slipstreaming Windows XP with Service Pack 3
– Using AutoStreamer
– Using Nlite. This is the easiest and most customizable method.
***Remember you want to create an ISO, not burn a CD.

Update Packs – Updating XP After April 8th, 2014
In theory Microsoft could provide a post SP3 update roll-up for XP but I wouldn’t hold my breath.
There are 3rd party solutions. These are often called “update packs”. Update Packs are unofficial updates rolled into one file. They are meant to integrate updates into an installation image not for installing on an already installed system. Let me repeat, these are UNOFFICIAL. Though most of these are safe there is a inherent security risk to using these.
Popular Windows XP Post-SP3 Update Packs:
Harkaz – Windows XP Unofficial SP4 http://www.ryanvm.net/forum/viewtopic.php?t=10321&postdays=0&postorder=asc&start=0
Onepiece XP Post-SP3 AIO Update Pack: http://www.wincert.net/forum/topic/5143-addon-onepiece-xp-post-sp3-aio-update-pack-v780/
RyanVM and related packs: http://www.ryanvm.net/msfn/ and http://www.ryanvm.net/forum/viewforum.php?f=25

Downloads
Service Pack 3 – Official or Major Geeks. Official SP3 CD here.
TweakUI v2.10 – Official or File Hippo or PC World
Zune Theme – Official
X-Setup – Official or Major Geeks
DirectX 9.0C – Official from Microsoft or FileHippo or GameFront or DirectX End-User Runtimes (February 2010)
All my XP downloads are on Dropbox.


Running XP In A Virtual Machine
Running XP in a Virtual Machine is extremely easy. Obviously you don’t want to do this on XP era hardware but on modern or even semi-modern hardware an XP VM is as fast as greased lightning.
The 3 most popular methods to run XP in a VM are:
1 – XP Mode – Free from Microsoft. I’ve never been a fan of XP Mode. Not available after Windows 7.
Windows XP Mode – “Windows XP Mode comes as a separate download and works only with Windows 7 Professional, Ultimate, and Enterprise. Windows XP Mode also requires virtualization software such as Windows Virtual PC. Both are available free on the Microsoft website.
Install and use Windows XP Mode in Windows 7
“Important – After April 8, 2014, technical support for Windows XP and Windows XP Mode will no longer be available, including updates that help protect your PC. This means that if you continue to use Windows XP or use Windows XP Mode on a Windows 7 PC after support ends, your PC might become more vulnerable to security risks and viruses. Therefore, to keep your Windows 7 PC secure after April 8, 2014, we recommend that you only use Windows XP Mode if your PC is disconnected from the Internet.”
Pros – Free
Cons – Only runs on Windows 7 Pro, Ultimate, and Enterprise. Support ends on April 8th, 2014.

Because of the cons (and the fact that I don’t like it) I’m not going to cover using XP Mode.
See:Windows Secrets, Using Windows 7′s XP Mode — step by step

2 – VirtualBoxDownload & Info
Pros – Free, open source, multi-platform, consistently updated, Runs XP extremely well.
Cons – In my experience runs slower than VMWare. Doesn’t quite run as seamlessly with host OS as VMWare Player.

3 – VMWare PlayerDownload & Info
Pros – Free (non-commercial use), multi-platform, Runs XP extremely well.
Cons – No cons for running XP.

XP running in VirtualBox and VMWare Player under openSUSE Linux. Click pic to see full-sized.
xpvm_final_small_1

Game on!
tweakhound_xp_eos_VM_games

Using XP In VirtualBox

Setup Tips
– 2048MB memory and 2 CPUs is more than enough.
– Video, 128MB memory, enable 2D and 3D
You can increase the video memory to 256MB by manually editing the .vbox file (VRAMSize=”256″) or by using vboxmanage.
– Disk size. Size depends on what you are going to install. On my machine a cleaned, fully updated XP w/SP3 is 3.5 GB  (nlited version is under 3GB) + 2GB page file (yes, you need a page file). So, with nothing installed I’m at 5.5GB. Keep in mind XP’s built-in defrag requires at least 15% free space. To allow for plenty of free space to install stuff I would recommend 15GB (10GB as a minimum, you can expand it later).
Install Tips
– In the storage section add your XP iso as a CD drive.
If your XP CD is an upgrade disk you can use a Windows 95/98/ME iso as another (Use XP as Master).
– If you desire a bit more performance you can make your install on or move your install to an SATA controller.
See: How To: Install XP with SATA support
tweakhound_xp_eos_vb_set

Using XP In VMWare Player

Setup Tips
– 2048MB memory and 2 CPUs is more than enough.
Disk size. Size depends on what you are going to install. On my machine a cleaned, fully updated XP w/SP3 is 3.5 GB  (nlited version is under 3GB) + 2GB page file (yes, you need a page file). So, with nothing installed I’m at 5.5GB. Keep in mind XP’s built-in defrag requires at least 15% free space. To allow for plenty of free space to install stuff I would recommend 15GB (10GB as a minimum, you can expand it later).
Install Tips
– In the storage section add your XP iso as a CD drive (ensure Connect at power on is checked).
If your XP CD is an upgrade disk you can use a Windows 95/98/ME iso as another.
Ensure Connect at power on is UNchecked. When XP setup asks for previous Windows version connect it.
Extra Tips
– Access BIOS / Change BIOS boot delay – Accessing the BIOS when the POST screen clears too quickly (1004129)
tweakhound_xp_eos_vm_set

XP Virtual Machine Security
Microsoft and darn near every security expert will tell you to disconnect XP from the internet.
If you don’t need the VM connected then simply disable the network connection in the VM’s settings.
Ditch The Internet, Keep Your LAN connection
While not a perfect solution you can block the machine from the internet and stay on your home network.
This will require you to manually configure networked printers and computers
You do this by manually setting your IP address and leaving the gateway blank.
First, find your IP address info;
– Press the Windows + R keys and type cmd and press the Enter key
– In the command window type ipconfig
– Use the addresses in the IP Address and Subnet Mask for the steps below.
To configure TCP/IP for static addressing:
1. Open Network Connections
2. Right-click the network connection you want to configure, and then click Properties.
3. On the General tab (for a local area connection) or the Networking tab (all other connections), click the Internet Protocol (TCP/IP) component, and then click Properties.
4. Click Use the following IP address:
– For a local area connection, in IP address, Subnet mask, and Default gateway, type the IP address, subnet mask, leave the default gateway addresses blank.
Note
– To open Network Connections, click Start, click Control Panel, click Network and Internet Connections, and then click Network Connections.
– You must be logged on as an administrator or a member of the Administrators group in order to complete this procedure. If your computer is connected to a network, network policy settings may also prevent you from completing this procedure.

Anti-Virus
If your XP VM connects to the internet I highly recommend you use an anti-virus.
Do not use Microsoft Security Essentials as support will end ( as of this writing indications are April, 2015).
No recommendation here. Check AV-Comparatives for the latest rankings.

Tweaking Your XP Virtual Machine
Tweaking can be done exactly as you would a regular XP machine.
However, if desired you can strip it down even further.
See: TweakHound’s Super XP Tweaking Guide – SP3 Final
Tweaking Downloads
These are for folks who know what they are doing.
BACKUP your VM before using. No support, No whining, No kidding!
Right-click and Save files. Change these file extensions from .txt to .reg and double-click to run.
These are the tweaks I use on all my XP installs.
https://tweakhound.com/xp/xp_virtualmachine_stuff/xp_final_reg.txt
Default Services (XP Pro):
https://tweakhound.com/xp/xp_virtualmachine_stuff/xp_pro_default_services.txt
Services completely stripped down to bare minimum (XP Pro).
Warning: Ugly, No network at all. Some apps may not function.
https://tweakhound.com/xp/xp_virtualmachine_stuff/xp_pro_stripped_services.txt
You can create your own Services reg file over at Black Viper’s site.

-END-

eXPired – The Last Windows XP Guide You’ll Ever Need

Feb 162014
 

win8logoTweaking Windows 8.1
Tweaking Windows 8

The Windows 8 Freeware Machine

Clean Install Windows 8.1

Install Windows 8 – Clean Install With Upgrade Media

How To Downgrade Windows 8

Windows 8.1 And WEI?

Guide To Windows 8.1 System Image Backup

Install Windows 8 – Upgrade

Windows 8 – Cleaning Up After You’ve Upgraded

Cleanup After Windows 8.1 Upgrade

Windows Update Cleanup For Windows 7 And Windows 8

Windows 8.1 SSD Settings, Etc.
Windows 8 SSD Settings, Etc.

How To Resize Your Windows 8 Partition

Windows 8.1 Account Settings

Windows 8.1 SkyDrive Options

Windows 8 Custom Menus & Stuff

Windows 8.1 – View Libraries In Explorer

Creating Toolbars In Windows 8

Create Shutdown, Restart, Logoff Tiles For Windows 8

Create Windows 8 Recovery Media

Windows 8 – Elevated Command Prompt

How To Fix The Windows Bootloader

Windows 8 Default Services

All Windows 8 Keyboard Shortcuts

Pin Items To The Taskbar In Windows 8

Gid Rid Of Windows 8.1 Help Stickers

Internet Explorer Pinned Sites

Buying The Windows 8 Pro Upgrade From Microsoft

Windows 8.1 Registry Tweaks I Am Using

Jan 302014
 

th— This post is unfinished and should be considered early BETA version until further notice. I am hoping for some feedback / input.
*** I have had several conversations with folks who are or have purported to be knowledgeable in this subject. To date they have all backed out or disappeared once I request to publish their statements and names. That all changed today as I received input from an expert in regards to the useplatformclock tweak.
IMHO it is very important to read what he has to say. The full email exchange is at the bottom of this post.

****Edit 22DEC2014
Folks, I’ve done all I can with these tweaks.
I cannot reproduce results others (mostly overclockers) are seeing with this.
This does not mean some folks are not seeing a positive effect, simply that I’m unable to reproduce it.
Please read the 2 email conversations at the end of this article.
For me, this issue is now closed.


3 purported performance tweaks benchmarked.
They are: useplatformclock, tscsyncpolicy, and disabledynamictick.

Opening Statement
These tweaks have been mentioned in some places (and to me) as performance tweaks. I set out to see if they were.

The Tweaks, Defined
bcdedit /set useplatformclock true
bcdedit /set tscsyncpolicy Enhanced
bcdedit /set disabledynamictick yes

The commonality they share is they are setting that involve the system clock.
In general Windows will use the best timer your hardware supports and may use a mix of timers.
“Best” does not always mean fastest. Fastest can mean errors.
These settings can harm battery life.
As I understand it, Windows 8.1 defaults to invariant TSC when hardware supports it.

These tweaks are applied via Command Prompt (Admin).
To remove them:
bcdedit /deletevalue useplatformclock
bcdedit /deletevalue tscsyncpolicy
bcdedit /deletevalue disabledynamictick

To view bcdedit settings:
bcdedit /enum

http://msdn.microsoft.com/en-us/library/windows/hardware/ff542202%28v=vs.85%29.aspx
useplatformclock [ yes | no ]
Forces the use of the platform clock as the system’s performance counter.
Note This option should only be used for debugging.

tscsyncpolicy [ Default | Legacy | Enhanced ]
Controls the times stamp counter synchronization policy. This option should only be used for debugging.
Note The option is available starting in Windows 8 and Windows Server 2012.

disabledynamictick [ yes | no ]
Enables and disables dynamic timer tick feature. The option is available starting with Windows 8 and Windows Server 2012.
Note This option should only be used for debugging.


The Tweaks, More Info

If you also use Linux on your machine you can check system messages for which timer your system supports.
From my machine:
2013-12-01T07:31:10.607644-05:00 XXXXXXXXXX kernel: [ 0.000000] hpet clockevent registered
2013-12-01T07:31:10.607645-05:00 XXXXXXXXXX kernel: [ 0.000000] tsc: Fast TSC calibration using PIT
2013-12-01T07:31:10.607645-05:00 XXXXXXXXXX kernel: [ 0.001000] tsc: Detected 2693.799 MHz processor
2013-12-01T07:31:10.607753-05:00 XXXXXXXXXX kernel: [ 0.036518] TSC deadline timer enabled
2013-12-01T07:31:10.608522-05:00 XXXXXXXXXX kernel: [ 1.818067] tsc: Refined TSC clocksource calibration: 2693.880 MHz
2013-12-01T07:31:10.608528-05:00 XXXXXXXXXX kernel: [ 2.818095] Switched to clocksource tsc

Useplatformclock
a.k.a – HPET tweak
Forces Windows to use hardware timer instead of OS default.

Tscsyncpolicy
Very little information exists at Microsoft.com on tscsyncpolicy:

https://www.google.com/#filter=0&q=tscsyncpolicy+site:microsoft.com

Disabledynamictick
Very little information exists at Microsoft.com on disabledynamictick:

https://www.google.com/#q=disabledynamictick+-social+-answers+site:microsoft.com

The only legitimate use for this I have seen is as a fix for hardware issues that has since been fixed.
Example:
Issue: http://withinwindows.com/within-windows/2012/06/28/workaround-for-windows-8-freezing-issues
Fixed: http://withinwindows.com/within-windows/2012/07/10/hotfix-available-for-windows-8-freezing-issues


Places I Found Info:
The Windows Timestamp Project – Microsecond Resolution Time Services for Windows
Microsoft: Timers, Timer Resolution, and Development of Efficient Code
Wikipedia – High Precision Event Timer
Wikipedia – Time Stamp Counter
Oracle – High Resolution Timesource (Linux)
A Negative Ping Value, Hang Condition, Poor Performance or Machine Checks may be experienced on IBM System X Multinode Servers running Microsoft Windows 2008 R2 – IBM System x
Microsoft – Guidelines For Providing Multimedia Timer Support (old info but informative)
Intel 64 and IA-32 Architectures Software Developer’s Manual

Interesting Forum Posts
http://www.neowin.net/forum/topic/1075781-tweak-enable-hpet-in-bios-and-os-for-better-performance-and-fps/
http://forums.guru3d.com/showthread.php?s=21dd8ddd4aa9dc89114ceec5f271c275&t=368604
http://rog.asus.com/forum/showthread.php?23113-HPET-High-Precision-Event-Timer&s=d1869792a05a1efea5d936c63e0908a9

Tools
LatencyMon

WinTimerTester 1.1


Benchmarks
Hardware: My Laptop (Intel i7)
OS: Windows 8.1

PCMark8 Pro – Creative Conventional 3.0 (external monitor)
Download & Info
(click score to see details at futuremark page)

PCMark8 Score
baseline 3589
useplatformclock 3538
tscsyncpolicy 3589
disabledynamictick 3589

ttweaks_pcmark8

3dMark Pro – Fire Strike Extreme 1.1 (external monitor)Download
Download & Info
(click score to see details at futuremark page)

3dMark Score
baseline 791
useplatformclock 792
tscsyncpolicy 792
disabledynamictick 791

ttweaks_3dmark

 

Passmark 8.0
Download
Setup: Laptop plugged in to external monitor. Forced Passmark to use Nvidia card instead of Intel. (full scores here)

 Passmark  baseline  useplatformclock  tscsyncpolicy  disabledynamictick
 Rating  3720.8  3590.0  3728.2  3619.2

 

Nvidia TimerTiming
Download

16 Tests. Without useplatform tweak is faster 14 of 16.

 Before useplatform tweak.  After useplatform tweak
Report file for timing the various timers.*** Key number is the avg time.
The smaller this number, the faster the timer.
QueryPerformanceFrequency() freq = 0 2630752
method 0:
QueryPerfCntr..() 100 times
tot: 0 3
avg: 0.030000
avg time: 1.14036e-008
method 0:
QueryPerfCntr..() 500 times
tot: 0 14
avg: 0.028000
avg time: 1.06433e-008
method 0:
QueryPerfCntr..() 1000 times
tot: 0 27
avg: 0.027000
avg time: 1.02632e-008
method 0:
QueryPerfCntr..() 10000 times
tot: 0 279
avg: 0.027900
avg time: 1.06053e-008method 1:
GetTickCount() 100 times
tot: 0 1
avg: 0.010000
avg time: 3.80119e-009
method 1:
GetTickCount() 500 times
tot: 0 4
avg: 0.008000
avg time: 3.04096e-009
method 1:
GetTickCount() 1000 times
tot: 0 31
avg: 0.031000
avg time: 1.17837e-008
method 1:
GetTickCount() 10000 times
tot: 0 79
avg: 0.007900
avg time: 3.00294e-009method 2:
TimeGetTime() 100 times
tot: 0 16
avg: 0.160000
avg time: 6.08191e-008
method 2:
TimeGetTime() 500 times
tot: 0 22
avg: 0.044000
avg time: 1.67253e-008
method 2:
TimeGetTime() 1000 times
tot: 0 42
avg: 0.042000
avg time: 1.5965e-008
method 2:
TimeGetTime() 10000 times
tot: 0 406
avg: 0.040600
avg time: 1.54328e-008method 3:
Pentium internal high-freq cntr() 100 times
tot: 0 3
avg: 0.030000
avg time: 1.14036e-008
method 3:
Pentium internal high-freq cntr() 500 times
tot: 0 11
avg: 0.022000
avg time: 8.36263e-009
method 3:
Pentium internal high-freq cntr() 1000 times
tot: 0 20
avg: 0.020000
avg time: 7.60239e-009
method 3:
Pentium internal high-freq cntr() 10000 times
tot: 0 192
avg: 0.019200
avg time: 7.29829e-009
Report file for timing the various timers.*** Key number is the avg time.
The smaller this number, the faster the timer.
QueryPerformanceFrequency() freq = 0 14318180
method 0:
QueryPerfCntr..() 100 times
tot: 0 1079
avg: 10.790000
avg time: 7.53587e-007
method 0:
QueryPerfCntr..() 500 times
tot: 0 5205
avg: 10.410000
avg time: 7.27048e-007
method 0:
QueryPerfCntr..() 1000 times
tot: 0 10331
avg: 10.331000
avg time: 7.2153e-007
method 0:
QueryPerfCntr..() 10000 times
tot: 0 103280
avg: 10.328000
avg time: 7.21321e-007method 1:
GetTickCount() 100 times
tot: 0 33
avg: 0.330000
avg time: 2.30476e-008
method 1:
GetTickCount() 500 times
tot: 0 40
avg: 0.080000
avg time: 5.5873e-009
method 1:
GetTickCount() 1000 times
tot: 0 68
avg: 0.068000
avg time: 4.74921e-009
method 1:
GetTickCount() 10000 times
tot: 0 457
avg: 0.045700
avg time: 3.19175e-009method 2:
TimeGetTime() 100 times
tot: 0 136
avg: 1.360000
avg time: 9.49841e-008
method 2:
TimeGetTime() 500 times
tot: 0 167
avg: 0.334000
avg time: 2.3327e-008
method 2:
TimeGetTime() 1000 times
tot: 0 284
avg: 0.284000
avg time: 1.98349e-008
method 2:
TimeGetTime() 10000 times
tot: 0 2284
avg: 0.228400
avg time: 1.59517e-008method 3:
Pentium internal high-freq cntr() 100 times
tot: 0 35
avg: 0.350000
avg time: 2.44444e-008
method 3:
Pentium internal high-freq cntr() 500 times
tot: 0 72
avg: 0.144000
avg time: 1.00571e-008
method 3:
Pentium internal high-freq cntr() 1000 times
tot: 0 125
avg: 0.125000
avg time: 8.73016e-009
method 3:
Pentium internal high-freq cntr() 10000 times
tot: 0 1148
avg: 0.114800
avg time: 8.01778e-009

Conclusion
Notes:
1 – Since I am not experiencing any stuttering or lagging issues I can only attest to the performance impact. You should fully update Windows as many of these issues have reportedly been fixed.
2 – When viewing info on this subject on the web (especially forum posts), anecdotal evidence suggests that the effect of these tweaks may be hardware dependant. I’m unsure what would drive this variation (bad hardware, BIOS, drivers???). I’ve only tested these tweaks on my laptop.
3 – I understand that these tweaks can show improved latency numbers. I cannot see where this is translating into any performance benefit.
4 – Latency can influence things like audio recording. Most likely real-time high-end type use. I’ve not tested this.
5 – Although it would take far more benchmarks across many different types of hardware, it seems if the useplatformclock tweak has any effect it is negative.
(On my laptop PCMark 8, Passmark show slightly lower scores. It gets spanked by TimerTiming.)
6 – I’m not an engineer or developer. Do with this info as you see fit.

My results indicate that on a computer not experiencing issues these tweaks have no performance benefit.


Email from an expert ( he is a high-level software engineer):

– – – – Begin Email Conversation – – – –
Hi Eric,

I came across your Tweak site and saw some interesting tests regarding some tweaks. I noticed that one of the tweaks you tested was related to the PlatformClock.

bcdedit /set useplatformclock true
https://tweakhound.com/2014/01/30/timer-tweaks-benchmarked/

FWIW, I wanted to provide some additional insight as I’ve been involved with this since 2008 R2 when the Stamp Counter (TSC)was (Re)-introduced to Windows. The PlatformClock parameter / tweak is not meant to “improve” performance per say, it’s meant for stability and compatibility purposes which can (and will) improve performance over use of the TSC when enabled on / within the correct (Server) configuration environment.

You may recall that traditionally Windows (as do most x86 based OSs) function on the assumption / use of a Single Clock Domain for a given server, however with the ability of servers to be physically “scaled” (connected together) to create a larger “multinode” server (IE – 2, 3, 4, 5, 6, 7 or 8 node), we have a problem where each server has it’s own local “clock”. This creates a “multi-clock” domain which in and of itself is not bad, however, the “clocks” are Not synchronized across all nodes (unless Hardware clock synchronization is implemented which is very difficult/involved to implement) therefore there can be clock skew / drift between nodes & processors (other than Node 0) which can lead to thread scheduling and timing issues which at minimum can lead to performance problems in addition to other strange & bizarre behavior (poor network & disk performance, hang conditions, etc. etc. etc.).

The problem is encountered within a multi-clock domain beginning in 2008 R2 when the TSC was re-introduced as the default Clock (as mentioned above) Vs the use of the HPET (or Power Management (ACPI / PMclock)) Clock that prior OS versions used. The TSC is very fast and reliable but in using the TSC as the default Source Clock, the OS assumes a Single clock source. Depending upon which node the RDTSC thread executes, clock synchronization may / can become skewed resulting in thread scheduling problems and issues such as is mentioned above.

This said, to alleviate this potential problem on some older servers and certain multi-node scalable server platforms, “bcdedit /set useplatformclock true” should be implemented to circumvent these potential problems. Note: Even if the default system (platform) clock is HPET, ACPI / PMclock, etc, Windows must be explicitly told to use the Platform Clock else TSC will be used.

I wrote the following Knowledge Base (Retain Tip) article back in 2011 as a result of problems encountered when TSC was re-introduced in 2008 R2. Please note that these issues are not limited to IBM but can impact any vendor, system / server on which a multi-clock domain environment exists:
A Negative Ping Value, Hang Condition, Poor Performance or Machine Checks may be experienced on IBM System X Multinode Servers running Microsoft Windows 2008 R2 – IBM System x

The following is a good general article from MS related to Time Stamps and there are other on the web as well:
Acquiring high-resolution time stamps

Regards,
Ron Arndt

– – – – My Reply – – – –

Hi Ron,
Thank you very much for your highly informative email.
As far as it applies to desktops and gaming in particular what is your expert opinion of the tweak in question?
Also I would like to add what your email to the article, with your permission.
If you want to revise it in any way that is fine,
Thanks,
Eric Vaughan

– – – – His Reply – – – –

Hi Eric,

You may add the contents of the email and formatted as you see fit (IE some detail might cause confusion so polish / trim as needed) …

From a Desktop / Gaming standpoint, there should be no need to use the useplatformclock tweak within a Desktop / Laptop / Workstation environment unless there are known problems with the system using the TSC that could not be resolved within the vendor’s BIOS/UEFI code (which should be a known and documented issue within the vendor’s support forums, etc.).

In general, TSC is much faster for the OS and Apps to utilize than the other methods which should provide better overall performance by avoiding additional latencies due to additional overhead of the other clock counter methods.

This said, it is possible that depending upon the era of the HW platform (desktop, laptop, workstation, etc) that there may be some stability issues of some systems running Win7 / 2008 R2 (due to HW / FW and OS (TSC) implementations) being within a transitional period of time where a system may have better stability when using a system’s default (or configured platform clock within BIOS/UEFI) which is not the TSC (HPET, ACPI/PM_Timer) so stability is also a performance consideration.

In short, the TSC provides the lowest overhead which can and does translate to lower overhead / latency generally resulting in better performance and therefore the use of the TSC for Windows 2008 R2 (Windows 7) and later should remain as the default clock source unless known issues or problems are encountered.

Also, you might notice more of a difference in performance when testing single processor (socket) and single core processor packages Vs multi-socket / multi-core processor packages and configurations. I believe some of the more current desktops / workstations or Main Boards have more than one processor socket & core per processor which may be an interesting test behavior as we see the personal systems become more like the servers of a few years ago.

Regards,
Ron Arndt
– – – – End Email Conversation – – – –
 
– – – – Begin Email Conversation 2 – – – –
From JS:
I like your article on this very much, but you neglected to mention the aspect of overclocking and it’s effects on timing.
For example, if I overclock my FSB via SetFSB with the default timer, WinTimerTester shows that the longer I run it, the more out of sync QueryPerformanceCounter and GetTickCount get.
This causes severe problems in some games, notably “Battlefield: Bad Company 2″. I’m only able to play it for a few minutes before the game gets horribly out of sync and is unplayable.
If I set useplatformclock to true, I don’t have this problem. I get a near perfect 1.000 ratio in WinTimerTester while overclocked, and those games don’t get out of sync anymore.
More info here, http://forum.notebookreview.com/gaming-software-graphics-cards/569893-must-read-setfsb-o-c-game-problems-fixed.html
Video – Crysis 3 – 30% Framerate and Performance Boost, and FPS Cap Removal [120Hz.Net – HyperMatrix]
– – – – End Email Conversation 2 – – – -