Create working directory:
mkdir -p ~/forge/openmp4
cd ~/forge/openmp4
Clone LLVM & Compiler Runtime & Clang sources:
// $ cat makefile | |
// CUPTI = /opt/cuda/extras/CUPTI | |
// | |
// all: cupti | |
// | |
// cupti: cupti.cu | |
// nvcc -I$(CUPTI)/include -arch=sm_30 $< -o $@ -L$(CUPTI)/lib64 -lcupti -Xlinker -rpath=$(CUPTI)/lib64 | |
// | |
// clean: | |
// rm -rf cupti |
template<class PriorityEvaluation, class TProcInfo> | |
class ProcInfoWithPriority : public TProcInfo | |
{ | |
}; | |
template<class TProcInfo, class TCustom = void> | |
class ProcInfoVisitor | |
{ | |
}; | |
// This sketch essentially checks if all elements of AVX vector are greater than zero | |
// In infinite loop we ensure equality of two implementations | |
// | |
// gcc -mavx cmp_check.c -o cmp_check -O3 -ffast-math | |
#include <assert.h> | |
#include <stdlib.h> | |
#include <stdio.h> | |
#include <x86intrin.h> |
// AVX-512 horizontal multiply for k1om (Intel Xeon Phi Knights Corner) | |
// | |
// (c) 2016 Dmitry Mikushin dmitry@parallel-computing.pro | |
// | |
// $ icc -mmic -std=c99 -O3 reduce_mul.c -o reduce_mul | |
// $ micnativeloadex ./reduce_mul | |
// -0.004276 vs -0.004276 | |
#include <immintrin.h> | |
#include <stdio.h> |
// AVX-512 swizzle in native assembly for k1om (Intel Xeon Phi Knights Corner) | |
// | |
// (c) 2016 Dmitry Mikushin dmitry@parallel-compute.org | |
// | |
// $ icc -no-gcc -mmic -O3 -std=c99 test_swizzle.c -o test_swizzle | |
// $ micnativeloadex ./test_swizzle | |
// 1.000000 2.000000 3.000000 4.000000 5.000000 6.000000 7.000000 8.000000 | |
// 8.000000 8.000000 8.000000 8.000000 8.000000 8.000000 8.000000 8.000000 | |
#include <immintrin.h> |
JNIEXPORT jobject JNICALL Java_..._getValue( | |
JNIEnv *env, jobject ...) | |
{ | |
... | |
jobject resultObj = result.toJava().getObject(); | |
return resultObj; // Not NULL! | |
} | |
// Log shows: |
From b4a79a41f995b27038011f92f0da3c6852a8596c Mon Sep 17 00:00:00 2001 | |
From: Dmitry Mikushin <dmitry@kernelgen.org> | |
Date: Wed, 13 Sep 2017 03:28:26 +0300 | |
Subject: [PATCH] Make Alpine 2.21 to bounce all selected messages | |
--- | |
alpine/mailcmd.c | 5 ----- | |
alpine/reply.c | 12 ++++++------ | |
2 files changed, 6 insertions(+), 11 deletions(-) |
#ifndef TIMING_H | |
#define TIMING_H | |
#if defined(_WIN32) | |
#define CLOCK_REALTIME_WIN32 0 | |
#include <windows.h> | |
struct timespec_win32 | |
{ |
Welcome to Ubuntu 19.10! | |
[ 7.111555] systemd[1]: Failed to bump fs.file-max, ignoring: Invalid argument | |
[ 7.149252] systemd[1]: File /lib/systemd/system/systemd-journald.service:12 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup. | |
[ 7.150764] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.) | |
[ 7.165346] systemd[1]: /lib/systemd/system/dbus.socket:4: ListenStream= references a path below legacy directory /var/run/, updating /var/run/dbus/system_bus_socket ��→ /r. | |
[ 7.194813] random: systemd: uninitialized urandom read (16 bytes read) | |
[ 7.195455] systemd[1]: Reached target Remote File Systems. | |
[ OK ] Reached target Remote File Systems. | |
[ 7.210891] random: systemd: uninitialized urandom read (16 bytes read) |