Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
9 сентября 2010, 1:04:05 AM   # 1
 
 
Сообщения: 364
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
СВН оборотов 150 имеют некоторый код, чтобы попытаться автоматически определить, следует ли использовать 4-полосную SSE2. Нам это нужно, потому что это только быстрее на некоторых новых процессоров, которые имеют 128-битную SSE2, а не те, с 64-битным SSE2.

Он использует инструкцию CPUID, чтобы получить марку процессора, семейство, номер модели и степпинг. Это легкая часть. Зная, что делать с номером модели является сложной частью. Я не смог найти какую-либо таблицу семьи, степпинг для процессоров. Я должен был идти различными случайными сообщениями, которые я видел.

Вот что я закончил с:
Код:
 // Нам нужен Intel Nehalem или AMD K10 или лучше 128bit SSE2
  // Nehalem = i3 / i5 / i7 и некоторые Xeon
  // К10 = Opterons с 4-мя или более ядер, Phenom, Phenom II, Athlon II
  // Intel Core i5 семейство 6, модель 26 или 30
  // Intel Core i7 семья 6, модель 26 или 30
  // Intel Core i3 семейство 6, модель 37
  // семейство AMD Phenom 16, модель 10
  BOOL fUseSSE2 = ((FINTEL && nFamily * 10000 + nModel >= 60026) ||
                   (FAMD   && nFamily * 10000 + nModel >= 160010));

Я видел некоторые спорадические непоследовательные номера модели для процессоров AMD, так что я не уверен, если это будет ловить все, способное AMDS.

Если это не так, вы можете изменить его с помощью -4way или -4way = 0.

Он печатает то, что он находит в debug.log. Поиск по CPUID.

Это возможно только тогда, когда построен с GCC.
Satoshi сейчас офлайн Пожаловаться на Satoshi   Ответить с цитированием Мультицитирование сообщения от Satoshi Быстрый ответ на сообщение Satoshi


Как заработать Биткоины?
Без вложений. Не майнинг.


9 сентября 2010, 3:02:27 PM   # 2
 
 
Сообщения: 337
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Получил 1806 Биткоинов
Реальная история.





Вы должны эталонные все реализации (с использованием времени центрального процессора, а не в реальном времени) и выбрать самый быстрый и в то время тестирования проверить, действительно ли работает алгоритм.
tcatm сейчас офлайн Пожаловаться на tcatm   Ответить с цитированием Мультицитирование сообщения от tcatm Быстрый ответ на сообщение tcatm

9 сентября 2010, 3:39:08 PM   # 3
 
 
Сообщения: 1554
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Вы должны эталонные все реализации (с использованием времени центрального процессора, а не в реальном времени) и выбрать самый быстрый и в то время тестирования проверить, действительно ли работает алгоритм.

Да, при реализации Cuda Hasher Я думал об этом. Там должна быть интерфейс для обработчика хэширования (или даже полный шахтера на реализацию), и мы должны иметь простой способ дать ему известный блок, попросите его хэш-1000 одноразовых номеров и сравнить результат, в то время как бенчмаркинг в то же время. Не должно быть слишком трудно реализовать и поможет при разработке новых алгоритмов.

Схема интерфейса также поможет, если мы должны были подключить двигатель на базе ПЛИС, или что-то в этом роде, имея определенные точки входа в код без необходимости настройки по умолчанию горнорудной схемы в.
nelisky сейчас офлайн Пожаловаться на nelisky   Ответить с цитированием Мультицитирование сообщения от nelisky Быстрый ответ на сообщение nelisky

9 сентября 2010, 4:07:20 PM   # 4
 
 
Сообщения: 1484
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Вы должны эталонные все реализации (с использованием времени центрального процессора, а не в реальном времени) и выбрать самый быстрый и в то время тестирования проверить, действительно ли работает алгоритм.

+1 согласился. Это не трудно или времени для каждого пользователя, чтобы сделать это при запуске.

jgarzik сейчас офлайн Пожаловаться на jgarzik   Ответить с цитированием Мультицитирование сообщения от jgarzik Быстрый ответ на сообщение jgarzik

9 сентября 2010, 7:32:05 PM   # 5
 
 
Сообщения: 471
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Так как функция функции CallCPUID содержит x86 ассемблера, он ломает сборку на других архитектурах. Я изменил линию 2770 в main.cpp к

#if определен (__ GNUC__) && определен (CRYPTOPP_X86_ASM_AVAILABLE)

чтобы сделать его скомпилировать снова, по крайней мере, на ARM.
teknohog сейчас офлайн Пожаловаться на teknohog   Ответить с цитированием Мультицитирование сообщения от teknohog Быстрый ответ на сообщение teknohog

10 сентября 2010, 2:47:31 AM   # 6
 
 
Сообщения: 196
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Интересно, если бы мы могли получить код VIA C7 включены с автоопределением в стандартных клиентах? Или это слишком редкий зверь беспокоить основной код более? C7 работает со стандартными клиентами с регулярным или кодом Pentium SSE2 хотя и медленнее.

ЛЧМ сейчас офлайн Пожаловаться на ЛОМ   Ответить с цитированием Мультицитирование сообщения от ЛОГО Быстрый ответ на сообщение ЛЧМ

10 сентября 2010, 12:34:11 PM   # 7
 
 
Сообщения: 255
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

> Там должен быть интерфейс для обработчика хэширования (или даже полный шахтер в реализации)

+1. В случае, если кто-то хочет FPGA / независимо от конкретного ускорителя у него есть.
Нимнул сейчас офлайн Пожаловаться на Нимнул   Ответить с цитированием Мультицитирование сообщения от Нимнул Быстрый ответ на сообщение Нимнул

10 сентября 2010, 6:11:06 PM   # 8
 
 
Сообщения: 364
Цитировать по имени
цитировать ответ
по умолчанию Re: Автоматическое обнаружение для 128-битной 4-полосной SSE2

Так как функция функции CallCPUID содержит x86 ассемблера, он ломает сборку на других архитектурах. Я изменил линию 2770 в main.cpp к

#if определен (__ GNUC__) && определен (CRYPTOPP_X86_ASM_AVAILABLE)

чтобы сделать его скомпилировать снова, по крайней мере, на ARM.
Добавлено в SVN оборотов 152
Satoshi сейчас офлайн Пожаловаться на Satoshi   Ответить с цитированием Мультицитирование сообщения от Satoshi Быстрый ответ на сообщение Satoshi



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW