kouzdra (kouzdra) wrote,
kouzdra
kouzdra

Categories:

DSP-шное

Один весьма хороший автор почему-то под замком, потому не буду называть (хотя все догадаются) начал строить процессор для операций над кватернионами. Мне идея кажется сомнительной уже просто потому что в реальных задачах конкретные формулы емнимп довольно сильно упрощаются - отчасти от того что при умножении на вектор вещественная часть у вектора - 0 и там довольно много операций "уходит" уже поэтому, отчасти - потому что емнимп уже в том же вращении пространства - qvq-1 уже много довольно чего не только сокращается от умножения на 0 но и выносится за скобки.

В общем возникает вопрос - что лучше - аппаратная ускорялка или хорошо оптимизированный код под конкретную расчетную формулу.

В связи с этим вспомнилось как нам где-то в конце 90-х заказали запрограммировать алгоритмы gsm-ного канала для некоего опытного DSP, кой надизайнили европейские (бельгийские точнее) мозги.

Там были и спецкоманды для декодирования сверточного кода, и для решеточного декодирования и что-то еще. Увы - оказалось что сверточные коды гораздо быстрее декодируются если просто выписать это как огромную 32-битную логическую функцию (в духе известной оптимизации для игры жизнь), а алгоритм витерби тоже получается эффективнее если его вдумчиво расписать по командам "ручками" - и то и другое естественно с учетом необходимости команды шедулить.

В общем все без исключения "суперкоманды" оказались чуть более чем бесполезны. При этом простейшей для реализации "в железе" - хардкодной псевдослучайной перестановки битов в блоке там как раз не было (хотя вот ее программная реализация жрала чуть не половину ресурсов - потому что в 512-битном блоке переставить битики в соответствии с действительно псевдослучайной жестко заданной перестановкой - задачка вычислительно та еще).

После этого я собственно и слабо стал верить в мегаидеи спецкоманд и спецпроцессоров - в принципе это возможно - DSP с того и живут - но облажаться придумывая мегакоманды куда проще чем не облажаться.
Subscribe

  • Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 23 comments