What does FileMaker 2024 bring in terms of performance? Which features got faster? And did any other get slower? We performed various tests to find out and here we're going to share their results with you. We discovered, for instance, that starting server-side scripts got slightly faster, but not as much as we hoped for...
There is no doubt that Claris cares about performance of FileMaker. With almost every version they pick at least one functionality and try to make it faster. Or they added a new functionality that allowed us to make our solutoins faster. We can see this trend at least from version 12.
FileMaker 12, for instance, was able to loop through a set of records in a script much faster than previous versions. And Claris kept going despite the fact that we users never make it easy for them by asking for way too many new features. FileMaker 13 brought Perform Script on Server and simplified off-loading complex task to the server where all our data reside. FileMaker 15 got faster exports and also brought Truncate Table as a much faster way to delete all records from a table. FileMaker Server 18 got another export boost, as it was able to export records faster than FileMaker Server 17. With FileMaker 19 we got JavaScript support in Web Viewer and FileMaker 19.1.2 was the first one that could sort records on the host. Since FileMaker 19.3 we can leverage the full power of Apple silicon processors.
This is just a brief list of changes that affected FileMaker performance in an easily measurable way. Many other changes were made and Claris put a huge focus on the scalability aspect of the platform and kept increasing the total number of concurrent users a single FileMaker Server can handle, but what has the latest release marked as 2024 by marketing and 21 internally within the product brought in terms of performance?
We have executed our standard BenchTest test sets, as well as some specifically focused ones and here we are bringing the results to you. HOnza has also shared the results in the FMTraining.tv live stream and discussed their consequences with Richard Carlton:
Test environment
Not everyone is always using the latest computer equipment, and so we also don't do that when running performance test. Instead, we do our best to use the same setup in at least a few consecutive years, so that we can compare our new results with those from the past few years. So we did this year when testing FileMaker 2024.
Overall performance
We started by running the standard test set in our BenchTest tool in three different situations. The first was opening the database in FileMaker Pro directly from the local hard drive. The secon was connecting to FileMaker Server on a local network. For the third test we simulated an internet connection using the Network Link Conditioner tool by limiting the available bandwidth and increasing latency.
The differences of results collected in FileMaker 2024 and FileMaker 2023 were negligible, but we noticed one interesting details which is worth mentioning. FileMaker 2024 consistently performed slightly better than FileMaker 2023 on the simulated WAN connection. Even though the difference was very small, it's in line with the trend of Claris focusing on customers switching from on-premise installation to cloud.
Broken relationship graph
The next test we focused on was the impact of specific improvements reportedly brought in the new version. Release notes for FileMaker Server 21 mentioned caching of field definitions. The new version was also supposed to have the caching of relashionship graph improved, so we were interested whether and how much it improves the known issues. Since we already have a related focused test part of BenchTest (the Slow Graph test contributed by Vincent Lugnier some years ago when he reported a huge slow-down caused by a relationship graph with many broken relationships) we ran this test 100 times in each version. Sadly, this particular test got even slightly slower in FileMaker 2024...
Speed of performing script on server
Broken (and thus invalid) relationship grapth is an edge case so we also wanted to try something more real. As HOnza mentioned 7 years ago in his conference serssions about arachnophobia, one of things that are hugely affected by too complex relationship graph (with too many table occurrences in a single table occurrence group) is how long it takes for a file to open, which also affects how long it takes for a server-side script to start after the Perform Script On Server script step is issued on the client.
So we took two of our solutions we every day, in both of which we had to implement a server-side script queue to work around this common PSOS delay, and tried to measure how long it takes to start a server-side script in both versions of FileMaker, hoping that it might take much less in FileMaker 2024.
We executed the test 100 times in each of the two solutions and each of the two versions of FileMaker. And we did find FileMaker 21 slightly faster than FileMaker 20. It just was not that significant change we hoped for, such that would let us switch back to using PSOS instead of the server-side script queue.
Conclusion
We're glad that FileMaker 2024 made yet another, although small, step forward towards better performance. It seems like the caching may have eliminated some unnecessary fetchning of the relationship graph, but the bottleneck of starting server-side scripts, at least in the cases we care about, is somewhere else - probably in the processing, not fetching, the relationships. So let's not stop here and make the next step with the next version, and continue in the trend to make future FileMaker faster than the past ones. Even you can participate...