M
Mrinal
Hi ,
This is my take on the same :
1. .Net 2.0 , as Nicolas suggested will be a definite improvement in certain
areas , but that will be more related to optimization , but how much human
perception will catch it , totally depends on application .
2. There are cases , where actually un managed code can perform better ,
especially when .net code has to go for some kind of P Invoking with win32
API's, then
there are sure shot overheads , but then it is offset by good things like :
1. Automatic memory management , as unmanaged code are main reason for mem.
and handle leaks .
There could be some performance loss at IL -- Native Code level , but good
part is easy management of IL stuff and various other security benefits that
couple along .
3. Ngen , by defnition it seems to make good differences , but then there
are certain caveats :
1. By defaults it generates the code that is LCD for various compatible
processor architectures or otherwise for optimizing we need to know about
special calls and use appropriate flags , however jit , cretaes a real
optimized code with all benefits .
2. It invariably needs IL code (Manifest ) , at runtime , you maynot think
of protecting intellectual properties .
3. Any issues with installed native cache images , execution reverts to JIT
..
Actually JIT in theory may look like having some issues , but it's benefits
offsets all of them and again it's a first time hit after that there's no
repetitive compilation till the point source code is changed .
i hope this helps upto some extent ,
Mrinal
This is my take on the same :
1. .Net 2.0 , as Nicolas suggested will be a definite improvement in certain
areas , but that will be more related to optimization , but how much human
perception will catch it , totally depends on application .
2. There are cases , where actually un managed code can perform better ,
especially when .net code has to go for some kind of P Invoking with win32
API's, then
there are sure shot overheads , but then it is offset by good things like :
1. Automatic memory management , as unmanaged code are main reason for mem.
and handle leaks .
There could be some performance loss at IL -- Native Code level , but good
part is easy management of IL stuff and various other security benefits that
couple along .
3. Ngen , by defnition it seems to make good differences , but then there
are certain caveats :
1. By defaults it generates the code that is LCD for various compatible
processor architectures or otherwise for optimizing we need to know about
special calls and use appropriate flags , however jit , cretaes a real
optimized code with all benefits .
2. It invariably needs IL code (Manifest ) , at runtime , you maynot think
of protecting intellectual properties .
3. Any issues with installed native cache images , execution reverts to JIT
..
Actually JIT in theory may look like having some issues , but it's benefits
offsets all of them and again it's a first time hit after that there's no
repetitive compilation till the point source code is changed .
i hope this helps upto some extent ,
Mrinal