Runtime: [mscorlib]より多くの文字列関数をマネージコードに移動

作成日 2016年05月01日  ·  3コメント  ·  ソース: dotnet/runtime

現状では、 IndexOfLastIndexOfReplaceなどの多くの「高レベル」文字列関数は、マネージコードで記述できる場合にネイティブに実装されます。 これはf007485のstring.Replaceオーバーロードの1つで行われていることに気づいたので、C ++コードがどのようにマップされるかをよく知らない場合は、コードをよりアクセスしやすくするためにこれを行うとよいでしょう。 NS#。

area-System.Runtime enhancement untriaged

最も参考になるコメント

私たちは過去にこれを調査し、パフォーマンスを大幅に低下させることなく移動できるすべてのものを移動しました。 さらに移動するには、すべてのcoreclrアーキテクチャに対してかなり適切に管理された最適化を行う必要があります。

これは、coreclrが実行されるすべてのアーキテクチャ(x86、x64、arm、arm64)でRyuJIT以上のcodegenが利用可能になったときにのみ検討するのが理にかなっています。

ところで:すべての文字列メソッドのマネージド実装は、corertリポジトリで利用できます。

全てのコメント3件

私たちは過去にこれを調査し、パフォーマンスを大幅に低下させることなく移動できるすべてのものを移動しました。 さらに移動するには、すべてのcoreclrアーキテクチャに対してかなり適切に管理された最適化を行う必要があります。

これは、coreclrが実行されるすべてのアーキテクチャ(x86、x64、arm、arm64)でRyuJIT以上のcodegenが利用可能になったときにのみ検討するのが理にかなっています。

ところで:すべての文字列メソッドのマネージド実装は、corertリポジトリで利用できます。

@jkotasああ、それがcorertリポジトリの実装が管理されている理由です。 AOTでコンパイルされ、C ++コンパイラによって最適化されているため、JIT実装よりも優れたコード生成が得られます。これは、言及した一部のプラットフォーム(arm、arm64)でまだ進行中です。 それをクリアしてくれてありがとう、今は理にかなっています。

上記の@jkotasの応答からのように閉じると、ここで行うことは何も残っていません。 @jamesqoは、そうでないと思われる場合は、お気軽に再開してください。

このページは役に立ちましたか?
0 / 5 - 0 評価