My app uses FireDAC (Delphi XE7) to access SQLite.
The Mac version is about 12 times slower than the Windows version.
I have journal_mode turned off, and no journal files appear.
The only difference I can see is that the Mac has checkpoint_fullfsync turned on by default (it's turned off by default in Windows). I've turned it off on the Mac but the 12X slowdown persists.
The Mac is the latest Yosemite. SQLite3 -version reports 3.8.5.
Windows 7 is using whatever version of SQLite3 is baked into FireDAC.
What would cause such a huge difference in performance?
As da-soft said in their comment, setting FDConnection.ResourceOptions.SilentMode to True solves the issue. Queries are now ten times faster on OSX.
Based on tests done by folks by product testers working with Embarcadero, including comparisons to UNIDac using the same queries, the 12X slowdown has something to the way FireDAC uses transactions. The issue has been added to Embarcadero's bug reporting system and it was duplicated.
Related
I am working on a IddCx indirect Display Driver. I have run into a bug that I cant find any reason to blame my own code on. Every two seconds or so IddCxSwapChainReleaseAndAcquireBuffer takes over 100ms, up to 8000ms to complete. It normally takes below 16ms to complete (depends on your frame rate).
I even added timestamps to the IddCx Sample code from Microsoft. It still has this issue, so it cant be a fault with my own code. I have exhausted most of my debugging options.
Changing IddCx versions I am compiling with (1.4 to 1.8) by targeting the libs, the headers, and defining the macros (IDDCX_VERSION_MAJOR, IDDCX_VERSION_MINOR, IDDCX_MINIMUM_VERSION_REQUIRED). 1.9 btw doesnt seem to run well, IddCxDeviceInitConfig() fails with Invalid Parameter if I choose version 1.9.
Changing which UMDF version I am compiling with (2.25 to 2.33).
Changing the Windows SDK version I am using (10.0.19041.0, 10.0.20348.0, 10.0.22000.0, 10.0.22572.0).
Swapping my OS to the Insider Program preview version of win11 (currently 22000.588 co_release).
Things I think may be solutions that I need help on.
When I am running the Driver, within dxdiag, the display says its using WDDM version 1.3, while my other displays use WDDM version 3.0. WDDM 1.3 is old, so maybe this could be causing issues? How do I tell visual studio to compile my driver to compile with WDDM version 3.0? Does my driver need to WHQL Logo'd first?
IddCxGetVersion() returns with version 1801 or 1803 no matter what I change (SDK, IDDCx version, etc), which is from 2018! So what am I doing wrong here to get the OS to choose to use a newer version of IddCx? This may be related to the WDDM version being 1.3 instead of 3.0.
Swapping back to Windows 10. I originally swapped to Windows 11 because the WDK dev environment is completely unstable, with the samples sometimes not creating functional drivers, that fail to call into 'EVT_IDD_CX_ADAPTER_INIT_FINISHED', I have confirmed its being compiled incorrectly (sometimes) on windows 10, and the old dlls from earlier that day will still work, but the new dlls will not. So thats why I am staying with Windows 11, I also need to swap to Windows 11 anyways since we should be moving forwards, not backwards.
forgot to close this.
Realized the issue was that the monitor desktop simply wasnt updating. So the OS was just rendering the desktop less often, resulting in less frames being pushed to the swapchain for me to grab
We have a pretty huge HTML / JavaScript application written in a 15 year span that several programmers updated, edited and patched. We use this application on our computers (about 60 PCs) to teach languages online. The PCs that are used by our teachers are all Windows 8.1 (last update made in 2015), and the current IE version that's running the application is (it works only on IE):
Version: 11.0.9600.17937
Update version: 11.0.22
The decision to stop updating the computers was made due to the worry of compatibility issues. I'm taking over the position of the previous IT guy and I think it would be mandatory to update all machines with Windows 10 and the latest version of IE.
I would like to know your opinion and if there could be any compatibility issues between the IE11 version we are currently using and the latest version available on Windows 10.
I'm going to test myself the whole thing anyway.
Thank you for your help.
I see that Oracle 11g or 12c doesn't have the download files for OS X. However, there is a version of the SQL Developer available for OS X. What's the point of the SQL Developer when you don't have a database?
How do I install the Oracle database (preferable 12c or 11g Express Edition) on OS X?
You can't install the database server software directly on OS X1. Oracle made a decision some time ago not so support it any more, presumably because it wasn't used enough to justify the costs involved. I seem to recall its demise roughly coincided with Apple dropping their Xserve line, but I may have imagined that.
A client like SQL Developer is a very different proposition from a support perspective. SQL Developer is a Java application, and requires a JVM/JDK to be installed. Java's write-once-run-anywhere may not be entirely true, but it's still likely to be rather less work to support a relatively small Java application than a natively-compiled beast like an full RDBMS. They obviously have to do some work to have a .app bundle and there are some application difference from the Windows version, but they don't have to worry about different architecture, system libraries, etc. as that's the JVM's problem.
You can use SQL Developer on a Mac to connect to a database running on Windows or Unix/Linux etc., so it still has a place; the fact you can't have a local server running on the same hardware isn't really relevant for most people. It just allows developers to use a Mac instead of forcing them on to a Windows or Linux PC.
If you only have access to a Mac then the simplest route is still as noted before, to install VirtualBox and one of the pre-built VM images Oracle provides.
You can also install Windows or Linux on Bootcamp or in your own VM in Virtualbox, Parallels or VMWare; and then install Oracle natively. Using a pre-built image saves you needing to learn how to install the database server software, and also makes it easier to go back - if you really mess something up you can trash it and start again fairly simply.
If you're worried about performance or power use I'd suggest you start with a VM and see how you get on; you can always add Bootcamp later and even move the data across if you want to go down that route.
1 You could try to hack something together of course; it's been done before with 10g but I haven't seen anyone trying it recently so it may not be as easy on Yosemite and 11g/12c.
I ran Oracle Database 12c in my Mac via Docker by this way for development and testing https://koacervate.blogspot.com/2019/01/quick-start-fastest-way-to-run-instance.html.
Hope that is useful for you.
Regards,
I have had basic tests for meteor on a Windows7 PC.
But there the application crashed too often.
Before this, I tested meteor on PC running Windows8. There, crashes happened much less often and generally they were recovered when I shutdown and rebooted the meteor.
Is Meteor unstable on windows7?
Or is there any way to avoid this?
The version packaged to the MSI installer that can be found on win.meteor.com is not official. If you want a more stable, try the virtualized option I've described on the site. I've been using that for a month without issues.
Please could you be specific about what problems you are seeing, for example, what do you mean by 'crash'.
You can certainly raise issues on SO, but if they appear to be specific to the windows port, please raise a ticket at: https://github.com/sdarnell/meteor
The only difference between Win7 and Win8 meteor, is that the installer sets the Win7 compatibility mode for the node.exe executable on Windows 8.
There are also relatively few differences between the windows port of meteor and the official linux/mac release. So there is a possibility that the issue is either environmental (e.g. you have different things installed on the two machines), or it may even be a core issue that just happens to appear more often Win7 due to timing issues (there was a case of this in 0.6.3).
Other R-users may well agree that the RStudio IDE has been an extremely effective way to increase productivity. But, with the release of RStudio 0.96.122, neither 32-bit Macs nor OSX < 10.6 (Snow Leopard) are supported. I run OSX 10.6, but on a 32-bit Intel Mac; hence, my choices are
Accept that this will be the last functional release for my system and deal with its limitations.
Complain to the developers - I'd rather not.
Buy expensive new hardware, i.e. a new Mac.
Stop using R and/or RStudio - no way!
So my question is: At what point is it wise to upgrade hardware rather than keep a previous release of software such as RStudio? Is 64-bit that important for "normal" users?
Clearly RStudio is actively developed by some really clever programmers but, damn, Macs are expensive.
I'm currently facing the same issue. My guess is that you could install R on Amazon EC2. I'm going to try that myself in the coming days. I'll come back here to ask how to use a proxy to secure the result.