Re[2]: Можно ли делать вставки MSIL в код на c# ?
От: SergeyY  
Дата: 03.11.16 10:15
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, SergeyY, Вы писали:


SY>>У меня программа, будет работать с длинными целыми.


S>Нормальной быстрой математики под дотнет нет, большинство реализаций ничего кроме фейспалма не вызывают. Как пример.


S>Есть BigInteger, если устраивают тормоза в ~50x по сравнению с int64 — отлично. Если нет — остаются разнообразные обёртки типа MPIR.net, для совсем отчаянных есть gpgpu-обёртки типа CUDAfy.


S>Я бы вытащил числобробилку в натив и не мучался.



Да, видимо придется вытаскивать весь код на C++, а ассемблерными вставками (кроме UI), производительность для задач алгоритмического характера — важнее всего.
Просто на C# много других полезных и приятных вещей, одна сборка мусора чего стоит.
Вот и было интересно — если бы можно было , добавить в генерируемый CIL код что то свое (в данном случае — хотя бы просто прочитать регистр RDX в нужный момент),
то я мог бы сделать библиотеку классов для работы с длинной арифметикой гораздо быстрее этих BigInteger-ов, и использовал бы все возможности 64-битных процессоров.
А если нельзя часть CIL добавить, то очень жаль. (с интероп — как сказали, все таки, накладные расходы).
.NET от этого только выиграл бы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.