[TYPO3-dev] blog_example gives error "A cache with identifier "cache_extbase_reflection" does not exist"

Jigal van Hemert jigal at xs4all.nl
Fri Apr 23 15:35:32 CEST 2010


Dmitry Dulepov wrote:
> Jigal van Hemert wrote:
>> Speed performance tests on any piece of alpha software are pretty
>> useless IMO.
> 
> No. If you make it slow from the beginning, you can't improve it later,
> believe me. You need to rewrite it completely with performance in mind to
> make it fast. We already went through this with v4.

Sorry, but I don't fully agree on this part. When aiming for speed the 
algorithm is the most import factor. A fast algorithm will mean much 
more than any other optimization will do for you later.

However, during development you might want to log what is going on. 
You'll add logging code and things are getting slower because of the 
file I/O.

Another situation; the algorithm is as good as possible, but things are 
still slow. Profiling reveals that a certain piece of code is called 
very often. Rewriting that piece of code may gain quite a bit of speed.

Around 1996 during the development of the Quake engine Michael Abrash 
wrote articles in Dr. Dobb's Journal what they were developing and how 
[1] [2]. During development they changed large parts of the algorithms, 
but also managed to gain lot of performance by optimizing the most used 
piece of code: calculating the (inner) product of two vectors. In fact 
they squeezed the last bit of performance out of the Pentium processor 
by carefully building assembly code which synchronized the calculations 
done by the CPU and the FPU.

> There is an important principle. Unless you develop a prototype, you MUST
> develop your code so as it is the final version that you deliver to your
> client. It is simply not possible to improve the code later if it is not
> written with performance in mind. What's done, stays as it is because too
> much effort is needed to improve it.

I think that is your approach to writing code and it works very well for 
you.
Others may produce correct APIs with prototype code and go back later to 
  produce a production version of the implementation.

While it may be second nature to you to immediately produce an optimal 
database model with the right indexes and optimized queries, others may 
not be so talented. I'm not saying that FLOW3 has these shortcomings, 
but my remark about alpha software was meant for alpha software in general.

> I remember that a year ago at T3DD09 F3 team said that they improved
> performance of the framework dramatically. So what you see now is already a
> dramatically improved performance. You can guess what it was before.

Earlier it was even more like FLAW3? (Sorry, couldn't resist)

[1] http://en.wikipedia.org/wiki/Quake_engine
[2] http://www.gamedev.net/reference/articles/article656.asp

-- 
Jigal van Hemert
skype:jigal.van.hemert
msn: jigal at xs4all.nl
http://twitter.com/jigalvh




More information about the TYPO3-dev mailing list