Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (4)

Наибольший вклад в теги

Все теги (13)

Лучшие ответы пользователя

Все ответы (6)
  • Ошибки авторизации и голосования на Хабре?

    edeldm
    @edeldm
    За добавление логона по HTTPS!!!
    Неужели сложно прикрутить???
    Ответ написан
    1 комментарий
  • Видяшка в подарок?

    edeldm
    @edeldm
    на мой взгляд, цена\качество на текущий момент это Palit GTX460 2GB
    стоит 8т.р.
    Ответ написан
    2 комментария
  • Глянцевый монитор

    edeldm
    @edeldm
    Для меня главное — чтобы при чтении с экрана глаза не болели.

    Есть такой гибридный экран QiPixel. Это почти E-ink (читать можно с выключенной подсветкой экрана за счет заднего зеркала) и почти LCD. Он бывает вроде бы и глянцевый и матовый, но предпочтение отдам матовому — меньше бликует для чтения.

    На видео сравнение экранов известного брэнда и этой новинки.


    Замена экрана делается довольно легко — просто шлейф вставляешь, а если корпус экрана ноута не совсем подходит — то это досадные мелочи :).

    Но сейчас жду обзора экрана QiPixel и адекватные отзывы о нем российских пользователей. И было бы неплохо, если бы вышел в свет QiPixel с размером экрана хотя бы 17" для ноутов, а не нетбуков.
    Ответ написан
    Комментировать
  • Linux, OpenMP и GCC: многопоточная программа в 5-6 раз медленнее однопоточной?

    edeldm
    @edeldm
    еще есть
    cudaMemcpyToSymbol( «alpha», &alpha, 4);

    бегло просмотрел — вроде верно все.
    могу дать совет начинающего радиста — не крути две гайки одновременно.

    т.е. попробуй сначала просто копировать на видюху и обратно и проверяй значения на совпадения.
    затем многотредовое.

    я делаю еще такое (поделюсь куском кода :) ):

    __global__ void RunTest(unsigned long *heartbeat)
    {
    	unsigned long tid = blockIdx.x*blockDim.x + threadIdx.x;
    	heartbeat[tid] = 1;
    }
    
    void Runkerneltest(int grids, int threads, unsigned long *heartbeat)
    {
    	RunTest <<<grids, threads>>> (heartbeat);
    }
    
    
    
    
    bool TestKernel(int grids, int threads)
    {
    	unsigned long* heartbeat =  new unsigned long [grids*threads];
    	memset (heartbeat, 0, grids*threads*sizeof (unsigned long)); 
    	void* heartbeat_device = 0;
    	cudaError err;
    	err = cudaMalloc ((void**)&heartbeat_device, grids*threads*sizeof (unsigned long));
    	Check("cudaMalloc heartbeat_device",err);
    	err = cudaMemset (heartbeat_device, 0, grids*threads*sizeof(unsigned long));
    	Check("cudaMemset heartbeat_device",err);
    
    	Runkerneltest(grids,threads,(unsigned long*)heartbeat_device);
    
    	err = cudaThreadSynchronize();
    	Check("cudaThreadSynchronize()", err);
    	err = cudaMemcpy( heartbeat, heartbeat_device, grids*threads*sizeof(unsigned long), cudaMemcpyDeviceToHost );
    	Check("cudaMemcpy( heartbeat, heartbeat_device)", err);
    
    	bool error = false;
    	for (int i=0; i<grids*threads; i++)
    		if (heartbeat[i] != 1) 
    		{
    			LOG("tid %d test fails",i);
    			error = true;
    			break;
    		}
    
    	cudaFree (heartbeat_device);
    	delete (heartbeat);
    	return (error ? false : true); //если была ошибка, то false
    }
    Ответ написан
    3 комментария

Лучшие вопросы пользователя

Все вопросы (3)