Нужно переписать некий код, написанный на С, чтобы увеличить производительность.
Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI).
Архитектура x86-32 и x86-64.
Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность.
Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%).
Мы НЕ готовы оплачивать потраченное время, если результата не будет.
Если вы опытный программист, то пишите — расскажу более детально и дам код для оценки.
Сейчас, чуваков с такими скилами (сейчас не 1990 год, их несколько на всю планету наберётся, способных обогнать современные оптимизирующие компиляторы) точно не на rsdn искать нужно.
Здравствуйте, Elena_E, Вы писали:
E_E>Нужно переписать некий код, написанный на С, чтобы увеличить производительность. E_E>Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI). E_E>Архитектура x86-32 и x86-64. E_E>Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность. E_E>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>Мы НЕ готовы оплачивать потраченное время, если результата не будет.
программист должен рисковать своим временем и силами — в *лучшем* случае он получит оплату.
Здравствуйте, smeeld, Вы писали:
S>Здравствуйте, Elena_E, Вы писали:
S>Сейчас, чуваков с такими скилами (сейчас не 1990 год, их несколько на всю планету наберётся, способных обогнать современные оптимизирующие компиляторы) точно не на rsdn искать нужно.
А вот разгрести говнокод может и реально. Но для галочки можно и на ассемблере переписать кусочки, если времени не жалко)
Здравствуйте, Elena_E, Вы писали:
E_E>Нужно переписать некий код, написанный на С, чтобы увеличить производительность. E_E>Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI). E_E>Архитектура x86-32 и x86-64. E_E>Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность. E_E>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>Мы НЕ готовы оплачивать потраченное время, если результата не будет. E_E>Если вы опытный программист, то пишите — расскажу более детально и дам код для оценки.
Могу сказать, что у меня большой опыт оптимизации. В том числе современных методов обработки изображений, видео, криптографии, физики; CPU, ASM, SSE..., CUDA, PTX...
Могу также сказать, что с такими условиями оплата должна быть очень, очень высокой. Очень. Повышение производительности "хотя бы" на 10% для некоторых задач, уже оптимизированных алгоритмически, зачастую просто недостижимая величина. Нужно понимать, что алгоритмически сложные вещи тоже не дураки пишут, и они в курсе темы оптимизаций.
Даже анализ возможности оптимизации уже достаточно тяжелая задача.
Поэтому однозначно могу сказать, что указанные Вами условия — непонимание сути оптимизации. Желание собрать сливки, но не платить за молоко.
Опытный программист-оптимизатор с таким предложением не свяжется — это пустая трата времени и сил.
Здравствуйте, Razard, Вы писали:
R>Опытный программист-оптимизатор с таким предложением не свяжется — это пустая трата времени и сил.
Вообще какое-то странное предложение. Очень похоже на необходимость оптимизации софта для исполнения строго на маломощном железе при невозможности использования более мощного (мощное железо стоит дешевле разрабов). Очень похоже на предложение со стороны отечественных производителей аплайнсов для оборонки.
Здравствуйте, smeeld, Вы писали:
S>Вообще какое-то странное предложение. Очень похоже на необходимость оптимизации софта для исполнения строго на маломощном железе при невозможности использования более мощного (мощное железо стоит дешевле разрабов). Очень похоже на предложение со стороны отечественных производителей аплайнсов для оборонки.
R>Могу сказать, что у меня большой опыт оптимизации. В том числе современных методов обработки изображений, видео, криптографии, физики; CPU, ASM, SSE..., CUDA, PTX... R>Могу также сказать, что с такими условиями оплата должна быть очень, очень высокой. Очень. Повышение производительности "хотя бы" на 10% для некоторых задач, уже оптимизированных алгоритмически, зачастую просто недостижимая величина. Нужно понимать, что алгоритмически сложные вещи тоже не дураки пишут, и они в курсе темы оптимизаций. R>Даже анализ возможности оптимизации уже достаточно тяжелая задача. R>Поэтому однозначно могу сказать, что указанные Вами условия — непонимание сути оптимизации. Желание собрать сливки, но не платить за молоко. R>Опытный программист-оптимизатор с таким предложением не свяжется — это пустая трата времени и сил.
Я опытный с/с++ программист и не очень опытный на asm x32, так вот я лет 5 назад переписал функцию с С++ на ASM и в итоге она работала быстрее на 20% чем на с++.
Так что это миф, что компиляторы настолько оптимальный код пишет, что его очень трудно выиграть !!!
Здравствуйте, Elena_E, Вы писали:
E_E>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>Мы НЕ готовы оплачивать потраченное время, если результата не будет.
Думаю, с такими закидонами вы будете посланы любым более-менее опытным программистом. Лично я аж чаем поперхнулся, прочитав ваш выпендреж. Отсутствие у вас денег — ваша проблема.
Здравствуйте, Lepsik, Вы писали:
L>Вы там перекурились что ли?
L>Ни один нормальный программист на это не пойдет.
Для того, кто впервые хочет попробовать свои силы в таких оптимизациях, вполне неплохое предложение. В серьезные места ведь все-равно не возьмут без опыта.
Re[3]: Мы НЕ готовы оплачивать потраченное время, если результата не будет.
Здравствуйте, Michael7, Вы писали:
M>Здравствуйте, Lepsik, Вы писали:
L>>Вы там перекурились что ли?
L>>Ни один нормальный программист на это не пойдет.
M>Для того, кто впервые хочет попробовать свои силы в таких оптимизациях, вполне неплохое предложение. В серьезные места ведь все-равно не возьмут без опыта.
Для тех, кто хочет попробовать бесплатно поработать?
Re[4]: Мы НЕ готовы оплачивать потраченное время, если результата не будет.
Здравствуйте, synthetic, Вы писали:
S>Для тех, кто хочет попробовать бесплатно поработать?
Ради строчки в резюме иногда работают и бесплатно. Потому что бывает, что замкнутый круг получается: без опыта не берут даже на юниорские позиции, а опыт просто так тоже не получишь. Особенно, если возраст уже за 30 и тем более 40, но хочется попробовать себя в чем-то новом. Вот тут чел плачется, что изучал java, а не берут https://www.sql.ru/forum/1310288/gde-vzyat-opyt
Здравствуйте, Amygdala, Вы писали:
E_E>>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>>Мы НЕ готовы оплачивать потраченное время, если результата не будет.
A>Думаю, с такими закидонами вы будете посланы любым более-менее опытным программистом. Лично я аж чаем поперхнулся, прочитав ваш выпендреж. Отсутствие у вас денег — ваша проблема.
А в чём проблема-то? Платят за результат, за решение проблемы. На всяких апворкпх это "fixed price".
Обьективный критерий успеха есть — увеличение производительности на 10%
А вот ценник хорошо бы озвучить, да.
E_E>Если вы опытный программист, то пишите — расскажу более детально и дам код для оценки.
Нашли-нет?
Скорее всего дело не в ассемблере, а в алгоритмах.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Elena_E, Вы писали:
E_E>Нужно переписать некий код, написанный на С, чтобы увеличить производительность. E_E>Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI). E_E>Архитектура x86-32 и x86-64. E_E>Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность. E_E>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%).
Здравствуйте, Michael7, Вы писали:
M>Здравствуйте, synthetic, Вы писали:
S>>Для тех, кто хочет попробовать бесплатно поработать?
M>Ради строчки в резюме иногда работают и бесплатно. Потому что бывает, что замкнутый круг получается: без опыта не берут даже на юниорские позиции, а опыт просто так тоже не получишь. Особенно, если возраст уже за 30 и тем более 40, но хочется попробовать себя в чем-то новом. Вот тут чел плачется, что изучал java, а не берут https://www.sql.ru/forum/1310288/gde-vzyat-opyt
Что-то я с трудом представляю себе джуниора, который справится с этой задачей: разобрать алгоритмическое переоптимизированное месево и переписать на ассемблере так, чтобы оно заработало быстрее! При том, что он вынужден будет на ходу подтягивать знание алгоритмов, плюсов, учиться читать говнокод — тоже навык нужен! А Ассемблер?! — для эффективной работы несколько месяцев опыта даже гению нужны. А обычному кодеру нужны годы. Слишком дорогая строчка в резюме ИМХО
Здравствуйте, smeeld, Вы писали:
S>Здравствуйте, Elena_E, Вы писали:
S>Сейчас, чуваков с такими скилами (сейчас не 1990 год, их несколько на всю планету наберётся, способных обогнать современные оптимизирующие компиляторы) точно не на rsdn искать нужно.
Давно уже ничего не писал на асме (лет 15 точно), но когда надо было, то у меня получилось хорошо разогнать сишный код. В основном за счет использования MMX (C intrinsics не пошли у меня, проще оказадось на асме писать). Но и без MMX код был немного быстрее.
Здравствуйте, Elena_E, Вы писали:
E_E>Нужно переписать некий код, написанный на С, чтобы увеличить производительность. E_E>Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI). E_E>Архитектура x86-32 и x86-64. E_E>Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность. E_E>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>Мы НЕ готовы оплачивать потраченное время, если результата не будет. E_E>Если вы опытный программист, то пишите — расскажу более детально и дам код для оценки.
А какой именно ассемблер? масм, тасм или еще какой?
Здравствуйте, mizuchi, Вы писали:
M>Здравствуйте, Elena_E, Вы писали:
E_E>>Нужно переписать некий код, написанный на С, чтобы увеличить производительность. E_E>>Код связан с вычислениями, шифрованием, сложными хэш-функциями(например реализовать команды AES для процессоров не поддерживающих AES-NI). E_E>>Архитектура x86-32 и x86-64. E_E>>Оплата будет сдельная, и будет зависеть от того, насколько получится увеличить производительность. E_E>>Мы готовы оплатить, только если будет результат (хотя бы, увеличение производительности на 10%). E_E>>Мы НЕ готовы оплачивать потраченное время, если результата не будет.
M>программист должен рисковать своим временем и силами — в *лучшем* случае он получит оплату.
M>чем рискует заказчик в данном случае?
Здравствуйте, MScanner, Вы писали:
MS>Здравствуйте, rooter, Вы писали:
R>>О! ассемблер — это вещь!
MS>Хорошо написанный код на С++ даст такую же производительность , а может и лучшую , чем код на АСМ.
MS>Человек хорошо пишущий на АСМ, сможет хорошо написать и на С++, с точки зрения оптимизированного кода
Люди, ведь, не знаете о чем пишете. Криптография с открытым ключом использует арифметику на больших числах — это переносы на сложении, вычитании и умножении. Реальный пример: mbed TLS — написана на C и переносы между 8-и байтными числами написаны на С. Компилятор просто не знает, что это код переноса. Нужны иснтрукции SBB, ADC и пр. У OpenSSL специфичная лицензия — его использовать нельзя. Есть много математических методов для решения той же операции умножения точки в элиптических кривых и OpenSSL использует только одну из них, есть альтернативные. Используются разные методы предвычислений. WolfSSL отнсительно недавно, как раз во время этого поста, опубликовал резултаты, по которым обогнал OpenSSL.
Здравствуйте, bnk, Вы писали:
bnk>А в чём проблема-то? Платят за результат, за решение проблемы. На всяких апворкпх это "fixed price". bnk>Обьективный критерий успеха есть — увеличение производительности на 10% bnk>А вот ценник хорошо бы озвучить, да.
на апворках даже с фиксед прайс как правило поэтапно платят
В предложенной задаче как минимум 2 этапа
— разобраться с тем кодом который есть — это должно быть оплачено
— если исполнитель решит что способен ускорить на 10% — то берется и оплата по факту
а вписываться на кота в мешке не зная что там под капотом — ни один нормальный оптимизатор не будет
Здравствуйте, smeeld, Вы писали:
S>Вообще какое-то странное предложение. Очень похоже на необходимость оптимизации софта для исполнения строго на маломощном железе при невозможности использования более мощного (мощное железо стоит дешевле разрабов). Очень похоже на предложение со стороны отечественных производителей аплайнсов для оборонки.
Ограничения могут быть по мощности, тепловыделению или стоимости. Когда речь идеть о миллионах устройств, то разница даже в 50 центов играет совсем другими красками.
Здравствуйте, reversecode, Вы писали:
R>узнайте про библиотеку openssl R>там уже все оптимизировано для разных процессоров
Там все довольно средненько оптимизированно. Кроме тех случаев, когда оптимизация сводится к применению правильной команды процессора, которая сама все делает.
Здравствуйте, mizuchi, Вы писали:
M>программист должен рисковать своим временем и силами — в *лучшем* случае он получит оплату.
Программист может заложить риски в обозначенную сумму оплаты.
Вот к примеру, я вовсе не уверен, что я переплюну openssl'ную реализацию AES. Но за $30K готов рискнуть. Вопрос в том, готова ли Elena_E заплатить эти деньги в случае успеха.