Sponsored Content
Full Discussion: AVX for Linux (32-bit)
Special Forums UNIX and Linux Applications High Performance Computing AVX for Linux (32-bit) Post 302901015 by alister on Saturday 10th of May 2014 01:31:04 PM
Old 05-10-2014
Welcome to the forum.

Your post is devoid of specifics, so don't expect much targeted advice.

Are you using the CPUID instruction to detect AVX? That should work. For the specifics, there are posts on intel's site (and probably other places) demonstrating what to write/read from which registers.

However, if you actually want to use AVX, simply detecting CPU support is insufficient. Even if the CPU implements AVX, it cannot be used without operating system support (e.g. to save/restore the registers across context switches).

Regards,
Alister
This User Gave Thanks to alister For This Post:
 

8 More Discussions You Might Find Interesting

1. Programming

Bit field issues in Linux

edit: skip this post...the next is a better explaination of my issue. (2 Replies)
Discussion started by: DreamWarrior
2 Replies

2. Gentoo

compiling 32 bit application on 64 bit linux(x86_64)

hi all, i have a 64 bit linux machine. $uname -a Linux SVRDELLD30 2.6.9-42.ELsmp #1 SMP Tue Aug 15 10:35:26 BST 2006 x86_64 x86_64 x86_64 GNU/Linux here by default gcc creates 64 bit executable. but for some reason i want to create 32bit executable. first i want to create 32 bit object... (3 Replies)
Discussion started by: uttamhoode
3 Replies

3. Red Hat

boot the 32 bit kernel on a 64 bit PPC Linux machine?

Hi all, I'm looking to cover a corner case for an upcoming test cycle. Is there a way to boot a RedHat Advanced Server 4 (update 3) installed on a Power PC machine to use a 32 bit kernel? This would be similar to what is done here -> https://www.unix.com/aix/26204-aix-platform.html I've done... (0 Replies)
Discussion started by: philrau
0 Replies

4. Red Hat

Installing orca in Linux 5.2 64 bit

Hello All, We have a new project in place that calls for RHEL 5.2 64 bit version. This is our first 5.2 as well as 64 bit exposure. On our other Solaris and RHEL 4 systems we used a stats gathering software called ORCA. We are running into problems however trying to install it on RHEL 5.2 64... (0 Replies)
Discussion started by: dchitus
0 Replies

5. Red Hat

32bit Linux vs 64 bit Linux

Friends , Would u plz tell me what is the difference between 32-bit Linux o/s and the 64 bit Linux o/s . Is there any RAM limitation in this two types of o/s . Waiting for kind reply ... ... (7 Replies)
Discussion started by: shipon_97
7 Replies

6. UNIX for Advanced & Expert Users

migrating unix mp-ras 32 bit to linux suse 64 bit

Hi. I need to migrate the whole unix environment from a Unix mp-ras 32 bit to a Linux Suse 64 bit. 1) can i use cpio to copy the data? 2) can i just copy the users from unix to linux or do i have to create them by hand 3) are there any other concerns i should worry about? thanx (1 Reply)
Discussion started by: mrodrig
1 Replies

7. Post Here to Contact Site Administrators and Moderators

Linux forums a bit tight ?

Hi, I had done a long post here about the PCLinuxOS distribution but when I clicked on "submit" I got a message saying the post was too short : coming back has shown that my message disappeared : would you check how this forum is setup ? Thanks Mélodie (5 Replies)
Discussion started by: melodie
5 Replies

8. Shell Programming and Scripting

Command to find 32/64 bit in Linux

Hi, Can somebody tell me which command will help me find whether the OS is 32 bit or 64 bit. OS is LInux Thanks (3 Replies)
Discussion started by: aish11
3 Replies
CPUCTL(4)						   BSD Kernel Interfaces Manual 						 CPUCTL(4)

NAME
cpuctl -- cpuctl pseudo device SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file: device cpuctl Alternatively, to load the driver as a module at boot time, place the following in loader.conf(5): cpuctl_load="YES" DESCRIPTION
The special device /dev/cpuctl presents interface to the system CPU. It provides functionality to retrieve CPUID information, read/write machine specific registers (MSR) and perform CPU firmware updates. For each CPU present in the system, the special device /dev/cpuctl%d with the appropriate index will be created. For multicore CPUs such a special device will be created for each core. Currently, only i386 and amd64 processors are supported. IOCTL INTERFACE
All of the supported operations are invoked using the ioctl(2) system call. Currently, the following ioctls are defined: CPUCTL_RDMSR cpuctl_msr_args_t *args CPUCTL_WRMSR cpuctl_msr_args_t *args Read/write CPU machine specific register. The cpuctl_msr_args_t structure is defined in <sys/cpuctl.h> as: typedef struct { int msr; /* MSR to read */ uint64_t data; } cpuctl_msr_args_t; CPUCTL_MSRSBIT cpuctl_msr_args_t *args CPUCTL_MSRCBIT cpuctl_msr_args_t *args Set/clear MSR bits according to the mask given in the data field. CPUCTL_CPUID cpuctl_cpuid_args_t *args Retrieve CPUID information. Arguments are supplied in the following structure: typedef struct { int level; /* CPUID level */ uint32_t data[4]; } cpuctl_cpuid_args_t; It is equivalent to the CPUCTL_CPUID_COUNT request with level_type set to 0. CPUCTL_CPUID_COUNT cpuctl_cpuid_count_args_t *args Retrieve CPUID information. Arguments are supplied in the following structure: typedef struct { int level; /* CPUID level */ int level_type; /* CPUID level type */ uint32_t data[4]; } cpuctl_cpuid_count_args_t; The level field indicates the CPUID level to retrieve, it is loaded into the %eax register before the CPUID instruction is executed, The level_type field indicates the CPUID level type to retrieve, it is loaded into the %ecx register. The data field is used to store the received CPUID data. That is, data[0] contains the value of %eax register after the CPUID instruction is executed, data[1] is for %ebx, data[2] for %ecx, and data[3] for %edx. CPUCTL_UPDATE cpuctl_update_args_t *args Update CPU firmware (microcode). The structure is defined in <sys/cpuctl.h> as: typedef struct { void *data; size_t size; } cpuctl_update_args_t; The data field should point to the firmware image of size size. For additional information refer to cpuctl.h. RETURN VALUES
[ENXIO] The operation requested is not supported by the device (e.g., unsupported architecture or the CPU is disabled). [EINVAL] Incorrect request was supplied, or microcode image is not correct. [ENOMEM] No physical memory was available to complete the request. [EFAULT] The firmware image address points outside the process address space. FILES
/dev/cpuctl SEE ALSO
hwpmc(4), cpucontrol(8) HISTORY
The cpuctl driver first appeared in FreeBSD 7.2. AUTHORS
The cpuctl module and this manual page were written by Stanislav Sedov <stas@FreeBSD.org>. BUGS
Yes, probably, report if any. BSD
June 20, 2014 BSD
All times are GMT -4. The time now is 11:32 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy