LINUX.ORG.RU
ФорумTalks

Давайте померяемся: рисуем линии в иксах


0

0

Рисуется сто тысяч линий за раз в квадрате 400x400 пикселей.

Исходник программы + Makefile здесь: http://www.ptlan.com/~pacify/download/test-gcc-x-lines-linux.org.ru.tar.bz2

После замера напишите, пожалуйста, следующую информацию:
Тип и частота процессора (например, P4, 2800 MHz)
Наименование карточки (например, GF4 MX440-SE)
Драйвер видеоадаптера (например, nv)
X-сервер (например, xorg 7.1)
Количество FPS, которое выдает программа в консоли

У меня: Duron 700 MHz, GF4 MX440-SE, nv, Xorg 7.1.1, FPS = 8-9

Выходить из программы по нажатию Ctrl+C в консоли

★★★★★

Для тех, кто не любит ходить по ссылкам.

%--- test.c
// This software is under BSD license, author: xmpp:pacify@jabber.ru

#include <X11/Xlib.h>
#include <pthread.h> // pthread_create()
#include <unistd.h>  // sleep()
#include <stdio.h>   // printf()

#define N 100
#define TRUE 1
unsigned int FPS = 0;

void *printFPS(void *p) {
  while(TRUE) {
    printf("%d\n",FPS);
    FPS=0;
    sleep(1);
  }
}

int main() {
  Display *dpy;
  int black, white;
  Window win;
  GC gc;
  int i,j;
  int x1,y1,x2,y2;
  pthread_t threadprintFPS;

  // инициализация нити
  pthread_create(&threadprintFPS, NULL, printFPS, NULL);

  // создаем окно
  dpy = XOpenDisplay(NULL);
  black = BlackPixel(dpy, DefaultScreen(dpy));
  white = WhitePixel(dpy, DefaultScreen(dpy));
  win = XCreateSimpleWindow(dpy, DefaultRootWindow(dpy), 0, 0, 640, 480, 0, black, white);
  XMapWindow(dpy, win);
  gc = XCreateGC(dpy, win, 0, NULL);
  XSetForeground(dpy, gc, black);
  XSelectInput(dpy, win, StructureNotifyMask);
  // дожидаемся появления окошка на экране
  while(TRUE) {
    XEvent event;
    XNextEvent(dpy, &event);
    if(MapNotify == event.type) {
      break;
    }
  }
  // рисуем линии
  while(TRUE) {
    for(i=0;i<N;i++) {
      for(j=0;j<N;j++) {
        x1=i<<2;
        y1=j<<2;
        x2=j<<2;
        y2=i<<2;
        XDrawLine(dpy, win, gc, x1, y1, x2, y2);
      }
    }
    XFlush(dpy);
    FPS++;
  }
  return 0;
}

%--- Makefile
NAME=test

$(NAME):        $(NAME).c
                gcc -Wall -lX11 -lpthread -L/usr/X11R6/lib -o $(NAME) $(NAME).c

edit:           $(NAME).c
                vi $(NAME).c

html:           $(NAME).c
                vim -n -c ':so /usr/share/vim/vim63/syntax/2html.vim' -c ':wqa' $(NAME).c

%---

pacify ★★★★★
() автор топика

p3m-1000, S3 SuperSavage, xf86-video-savage-2.1.2, xorg-server-1.1.1, 25fps.

Кстати, в иксах была какая-то прога специально для подобного меряния (по-моему x11perf называется)

slav ★★
()

> Рисуется сто тысяч линий за раз в квадрате 400x400 пикселей.

Ошибся - 100*100 = сто тысяч линий

pacify ★★★★★
() автор топика
Ответ на: комментарий от pacify

А если на xcb эту прогу переписать? Вот тогда будет точно бенчмарк скорости отрисовки в иксах, сейчас же на самом деле измеряется не понятно что.

Deleted
()
Ответ на: комментарий от pacify

AMD Athlon 2200+ 1800Mhz
Radeon 9100/64Mb
Xorg 6,9
radeon(opensource)
1,3 Mesa 6.4.1
gcc 3.4.5
glibc 2.3.6
80-87

slackerr
()

P3-750, Matrox g450, Xorg-7.1 (debian etch), FPS=11-12

sdio ★★★★★
()

Athlon 64 3200+
nVidia GF6150
nvidia
xorg 7.2

С удалённой машины по X11: 8fps
Локально: 24fps
Локально в свёрнутом окошке: ~1700fps

kmeaw ★★★
()
Ответ на: комментарий от pacify

>> Рисуется сто тысяч линий за раз в квадрате 400x400 пикселей.

>Ошибся - 100*100 = сто тысяч линий

>pacify * (*) (28.03.2007 4:45:07)

где ошибся-- в первом предложении или втором?

berrywizard ★★★★★
()
Ответ на: комментарий от berrywizard

>>> Рисуется сто тысяч линий за раз в квадрате 400x400 пикселей.

>>Ошибся - 100*100 = сто тысяч линий

>>pacify * (*) (28.03.2007 4:45:07)

>где ошибся-- в первом предложении или втором?

вроде в обоих:S

Ip0 ★★★★
()

В среднем 46.

Core2Duo, 2GB Ram, ATYI FireGL v3300

P.S.: и не смотрите на меня так!!! Это на работе мне такой комп выдали - я бы сам взял NVidia, но спецификацию быдловендузятник составлял :-(

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

У меня всё по скромному: 5-6 Intel(R) Celeron(R) CPU 2.40GHz, SiS 6330

Вечером на домашнем попробую

Dominat ★★
()

CPU: celeron-1200MHz
VIDEO: GF4 mx440
DRIVER: NVIDIA 9631
X-server: XORG 6.9
FPS: 59

manntes ★★
()

AthlonXP 1800+ (разогнанный до 2400+@2000Mhz) GF Ti4200 nvidia-drivers-9631 xorg 7.2 88-90

rip_someday
()

AMD Athlon 2200+ (1800 MHz) Nvidia GeForce 6600GT (1.0.9746) Xorg 7.1.1 FPS = 110-116

Spacer
()

Кстати, эти тесты хотят только видеокарту что-ли? Разогнал процессор до 1600MHz => 59fps, загнал до 800MHz => 59fps... В соседнем тесте про GL при разгоне до 1600MHz => 170fps, 800MHz => таки 147fps. Пойду искать теперь утилитку для разгона видео, что бы проверить предположение :)

manntes ★★
()

Измерение сферических иксов в вакууме. Запишемся :)

A64 x2 2.0Ghz

nforce 6100. 64Mb Shared RAM

nvidia

X.Org version: 7.1.1

~52

anonymous
()

Intel Pentium M 1.7 GHz, ATI Radeon 9600, драйвер radeon, Xorg 7.1, 85-90 fps

anonymous
()

55..57

Pentium-M 2.13 GHz, ATI Mobility Radeon X600, драйвер - radeon (x.org 6.9.0).

yozhhh ★★★
()

Intel(R) Celeron(R) M processor         1.40GHz
ATI Mobility Radeon X600
Xorg 7.2.0
radeon(opensource)
glibc 2.5
gcc version 4.1.3 20070218
Mesa 6.5.2
ОЗУ: 512 Mb

FPS: 65-68

axiz
()

intel core 2 duo T5600, ati X1400, fglrx 8.34.8, debian testing amd64,
gcc 4.1.2

FPS: 28-30

free_serj ★★
()

Sony VAIO VGN-S2XP: Pentium M 745 1800Hz, ATI Mobility Radeon 9700 (64MB)

xUbuntu 6.10: ati, Xorg 7.1.1

Results: 78-84 FPS

tostep
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.