Sorry for the purely theoretical question.
I think there are great specialists.
I'm interested in your opinion.
Can I find application characteristics that could describe the behavior
of the application without being bound to a particular processor architecture?
To understand what is the application needs.
I understand that it's quite stupid to define this as the number of load / store per number
of floating point operations.
Can I choose the optimal architecture for an application based on this characteristic ?
Or is everything much more complicated?
Cache, prefetch, different type of load instructions (load32bit load 64bit and etc),
the degree of parallelism and etc architecture optimizations do this characteristic
If so, is it possible to find some characteristics that can be used to determine the
optimal architecture for a given application?
Is it possible to define these characteristics with the help of counters or should
we consider static analysis for example with the clang/llvm (the intermediate code
is much simpler. For example there is only one type of load / store memory access
instructions, and there are many other simplifications) ?
Sorry for may be offtop questions and thanks for your time.