задача SSE2

Тема в разделе "WASM.BEGINNERS", создана пользователем Татьяна, 16 янв 2017.

  1. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    sse2,C помогите пожалуйста написать код.
    N=16
    double a[n], b[n], c[n], k=0;
    a=b=c=i+3;
    k+= a*b*c+2;
    i=0, N-1
     
  2. Мановар

    Мановар Active Member

    Публикаций:
    0
    Регистрация:
    2 дек 2016
    Сообщения:
    143
    Задание какое то странное. Если я правильно понимаю, то
    a[0]=b[0]=c[0]=3
    a[1]=b[1]=c[1]=4
    a[2]=b[2]=c[2]=5
    и т.д.
    тогда [math]a\cdot b\cdot c = a^{3}[/math] (к чему куча массивов ?)
    по сути получаем сумму натурального ряда, где каждый элемент возведен в третью степень.
    Используя формулу [math](\frac{(n + 1)\cdot n}{2})^{2}[/math] вычисляет сумму первых 18 элементов, отбрасываем сумму первых двух, незабываем про наш довесок в виде двойки и по сути все.
    Вычисляется с помощью ручки и куска бумаги за минуту. Для чего sse непонятно.
    И что, нужно использовать только команды sse2 или из всего sse спектра, тоже не понятно.
     
    Последнее редактирование модератором: 17 янв 2017
    Mikl___ нравится это.
  3. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.788
    Задачи нет, есть копипаст её с отрывом от контекста. i=0, N-1 что это такое. Передайте вашему профессору что он м###к.
     
    Последнее редактирование модератором: 18 янв 2017
  4. Мановар

    Мановар Active Member

    Публикаций:
    0
    Регистрация:
    2 дек 2016
    Сообщения:
    143
    Татьяна, уточняйте, лишнюю работу делать никому не хочется.
     
    Последнее редактирование модератором: 18 янв 2017
  5. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    само задание вот
     

    Вложения:

    • IMG_3506.JPG
      IMG_3506.JPG
      Размер файла:
      957 КБ
      Просмотров:
      781
    Последнее редактирование модератором: 18 янв 2017
  6. Мановар

    Мановар Active Member

    Публикаций:
    0
    Регистрация:
    2 дек 2016
    Сообщения:
    143
    А что за С после sse2 ???
     
  7. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    на языке с
     
  8. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    это пример задачи, который преподаватель давал на паре, сейчас это же надо, только с условием что выше
     

    Вложения:

    • BqhEmMmQtBg.jpg
      BqhEmMmQtBg.jpg
      Размер файла:
      113,3 КБ
      Просмотров:
      771
    • CvvuzBSBiv8.jpg
      CvvuzBSBiv8.jpg
      Размер файла:
      138,4 КБ
      Просмотров:
      733
    • lgaQPZQN6sU.jpg
      lgaQPZQN6sU.jpg
      Размер файла:
      180,1 КБ
      Просмотров:
      774
    • xjG4y2NQN0U.jpg
      xjG4y2NQN0U.jpg
      Размер файла:
      129,7 КБ
      Просмотров:
      754
  9. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    я просто не понимаю что нужно именно поменять, запуталась уже во всем
     
  10. yashechka

    yashechka Ростовский фанат Нарвахи

    Публикаций:
    90
    Регистрация:
    2 янв 2012
    Сообщения:
    1.449
    Адрес:
    Россия
    Да это филькина грамота, это для тех кто знает что делать, а я например не знаю!!!
     
  11. yashechka

    yashechka Ростовский фанат Нарвахи

    Публикаций:
    90
    Регистрация:
    2 янв 2012
    Сообщения:
    1.449
    Адрес:
    Россия
    Выложите нормальный исходник в текстовом файле. И вообще, что это за предмет и какая у Вас специальность? Мне правда очень интересно!!!
     
  12. yashechka

    yashechka Ростовский фанат Нарвахи

    Публикаций:
    90
    Регистрация:
    2 янв 2012
    Сообщения:
    1.449
    Адрес:
    Россия
    Название у задачи должно быть!!! Все это не просто так. Не мог он так дать, положить на стол и сказать решайте!!!
     
  13. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    если бы было название, я написала. Звучит бредово, но именно так и было, раздал эти листки и сказал решать до завтрашнего дня, непонятно как
     
  14. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    исходника к сожалению нет, а предмет вычислительные системы. Надеюсь Ваш интерес удовлетворен
     
  15. yashechka

    yashechka Ростовский фанат Нарвахи

    Публикаций:
    90
    Регистрация:
    2 янв 2012
    Сообщения:
    1.449
    Адрес:
    Россия
    Я думал, что это графика. И вообще это задание может решить только подготовленный человек который занимается sse2 и си. https://habrahabr.ru/post/204682/
    Скорее всего у препода плохое настроение.
     
  16. Татьяна

    Татьяна New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2017
    Сообщения:
    8
    Видимо да, потому что одну группу завалил с этими задачами уже. И уже смотрела информацию, ссылку которой скинули
     
  17. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Примерная расшифровка:
    Дано: N=16, массивы a[ N ], b[ N ], c[ N ] типа double, переменная k типа double, равная 0.
    Необходимо: для всех i от 0 до N-1 выполнить присванивание a[ i ]=b[ i ]=c[ i ] = i+3.
    Также на каждой итерации цикла выполнить аккумуляцию суммы в k, каждый член которой вычисляется как a[ i ]*b[ i ]*c[ i ] + 2.
     
  18. yashechka

    yashechka Ростовский фанат Нарвахи

    Публикаций:
    90
    Регистрация:
    2 янв 2012
    Сообщения:
    1.449
    Адрес:
    Россия
    И пример на картинке не на с, а на с++ судя по типу хидеров.
     
  19. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Нахрена там так много кода (а, особенно, заголовочных файлов)? Он что, ещё и перформанс написанного кода мерять собрался?
     
  20. Мановар

    Мановар Active Member

    Публикаций:
    0
    Регистрация:
    2 дек 2016
    Сообщения:
    143
    Код (C):
    1.  
    2. #include "stdafx.h"
    3. #include "iostream"
    4. #include < emmintrin.h >
    5. int main()
    6. {
    7. const int N = 16;
    8. double A[N+1], B[N+1], C[N+1], res_end[N+1], k1, k = 0.;
    9. A[0] = 3., B[0] = 3., C[0] = 3.;
    10. for (int i = 1; i < N; i++)
    11. {
    12. A[i] = A[i-1] + 1.;
    13. B[i] = A[i]; C[i] = A[i];
    14. }
    15. __m128d mass_A, mass_B,mass_C,mass_kub;
    16. for (int i = 0; i < N; i += 2)
    17. {
    18. mass_A = _mm_load_pd(& A[i]);
    19. mass_B = _mm_load_pd(& B[i]);
    20. mass_C = _mm_load_pd(& C[i]);
    21. mass_kub = _mm_mul_pd(mass_A, mass_B);
    22. mass_kub = _mm_mul_pd(mass_kub, mass_C);
    23. _mm_store_pd(&res_end[i], mass_kub);
    24. }
    25. for (int i = 0; i < N; i++)
    26. {
    27. k += res_end [i] + 2.;
    28. }
    29. std::cout << k << std::endl;
    30. // А вот так вычисляется вся изложенная выше галиматья с математической точки зрения
    31. k1 = pow(((18. + 1.) * 18. / 2.), 2) - pow(((2. + 1.) * 2. / 2.), 2) + 2. * 16.;
    32. std::cout << k1 << std::endl;
    33. system("PAUSE");
    34. return 0;
    35. }
    36.  
    Код рабочий, но у самого осталось несколько вопросов (не знаю, то ли с компилятором VS связано, то ли еще с чем то).