I had asked them for years for the ability to exclude folders by name (or regex) in Synology Drive Sync to be able to keep out node_modules, .git and other garbage from synchronizing to my NAS. Support responded that I can just unselect the folder manually. They have never implemented it.
It seems the judge went with reasoning resembling an orange monkey logic. "I know online advertising better than anyone else on the planet, and Google is a monopoly".
A few important ones:
- Avoid memory allocations as much as you can. That's a primary thing. For example, case insensitive string comparisons using "a.ToUpper() == b.ToUpper()" in a tight loop are a performance disaster, when "string.Equals(a, b, StringComparison.CurrentCultureIgnoreCase)" is readily available.
- Do not use string concatenation (which allocates), instead prefer StringBuilder,
- Generally remember than any string operation (such as extracting a substring) means allocation of a new string. Instead use methods that return Span over the original string, in case of mystr.Substring(4,6) it can be a.AsSpan(4,6),
- Beware of some combinations of Linq methods, such as "collection.Where(condition).First()" is faster than "collection.First(condition)" etc.
Apart from that (which simply concerns strings, as they're the great source of performance issues, all generic best practices, applicable to any language, should be followed.
There are plenty resources on the net, just search for it.
DuckDB is specialized in efficient storage and fast query for analytics (OLAP), using a columnar storage (in contrast to row storage, used by usual RDBMSes doing OLTP processing). It's nothing new, it's been there for couple decades already. But this "distributed" DuckDB can indeed be beneficial for training.
reply