Heterogeneity is the next way and it is through OpenCL

ellievsbear
I'd rather be in outer space 🛸
Peter Solarz
Monterey Bay Aquarium
"I'm Dorothy Gale from Kansas"

Discoholic 🪩

JBB: An Artblog!
Stranger Things
Xuebing Du

Love Begins
Misplaced Lens Cap
d e v o n

tannertan36
Cosimo Galluzzi

titsay

祝日 / Permanent Vacation

roma★
occasionally subtle
seen from United States

seen from Malaysia

seen from United States

seen from United States

seen from United Kingdom

seen from United States
seen from Malaysia
seen from Spain

seen from United Kingdom

seen from Germany
seen from United States

seen from United States
seen from Austria
seen from Singapore

seen from Malaysia
seen from United States
seen from Romania

seen from Spain

seen from Singapore

seen from France
@saifmulla
Heterogeneity is the next way and it is through OpenCL

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
CrowdProcess connects with the browsers of people that are browsing the websites that join us...
In statement to the Guardian, NSA whistleblower describes vote as bold and historic decision in support of academic freedom
Amazing discoveries of the Hubble Space Telescope and right place to find anything about Hubble Space telescope such as amazing desktop wallpapers, education, etc
Installing NVidia drivers and CUDA on Fedora
/sbin/init 3

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
Building Linux kernel from source on Scientific Linux with Nvidia drivers
Building Gcc from source on Fedora
Apparently a very common problem with latest versions of Linux builds is updated version of GNU C compiler although most of our codes does not like it. So the best of the world would be to use get older version of GCC but sometimes it becomes difficult to obtain.
In my daily development I have to validated code on different compilers and also some of the code I obtain do not compile with latest versions. As a consequence I prefer to build gcc from source. In this post I will be describing about building gcc 4.6.3 from source.
The build process is done on Fedora however this method should work on any Linux build. Firstly obtain the GCC sources from Gcc website and further untar the package. Secondly install the prerequisites such as wget and glib development version for i686.
Run the following commands
yum install wget glibc-devel.i686 yum groupinstall "Development Tools" #not required for non yum builds
Further inside the untared GCC source directory
./contrib/download_prerequisites Now configure gcc ./configure --prefix=
incase if you get an error while configuring or compiling, simply make some changes in "linux-unwind.h" file inside "gcc/config/i386/linux-unwind.h" replace text "struct siginfo *pinfo;" to "siginfo_t *pinfo;"
Now run make && make install By this time you should be able to build gcc successfully. Further to start using GCC source the directory in your bashrc or do it globally using ldconfig.
export PATH=/bin:$PATH export LD_LIBRARY_PATH=/lib64:$LD_LIBRARY_PATH
Hope this helps for people who are looking to build gcc from source.
SSH config - permission denial
It's always convenient to perform remote SSH connections using host names rather attempting to remember IP address remote computer or server. Subsequently it's more expedient and smart choice when one requires to connect multiple remote machines. Accordingly it requires multiple complicated IP address or number to remember. Apparently this technique is convenient to me, as I have to connect to two of office desktops and two HPC clusters. Recently I was trying to set up SSH keys and corresponding configuration files for remote connection from my new PC. Following are steps to create SSH configuration and applies to any Linux OS. 1. create an simple text file with name 'config' inside .ssh folder in your user directory. 2. Inside the text file input 'Host' followed by user defined name you would like. 3. Next line 'HostName' followed by IP address of the remote machine 4. Next line 'User' followed by your user name you're registered with on destined machine. Furthermore you can connect to remote machine using ssh Host Host - use the name used in the configuration file Caveat: some cases likewise in my case I received an error message complaining "Bad owner or permissions on /home/username/.ssh/config" Solution: simply change the permission of 'config' file to 'chmod +x 600' Cheers!!!
Using Xcode to develop on your remote Linux systems
Linux Linux Operating System (OS) is universally considered best OS in regards to programming. Similarly Mac OS X with a beautiful Graphical User Interface (GUI) along with decent development tools hovering on powerful Unix kernel is perhaps a good choice as well. Imagine if you could develop your Linux based softwares from your Mac by utilising its development tools. If you have such kind of requirement this post elaborates to make this functionality work seamlessly.
I develop applications on the Linux environment, which are primarily targeted to run on workstations and HPC (High Performance Computing) Clusters. My development workstation and HPC cluster runs Ubuntu 12.04 LTS and Ubuntu Server 10.4 respectively. I switch between these two machines, which involves lots of “SSH’ing” (connection over Secure Shell). Access to the HPC cluster is only possible through SSH, and while telecommuting I connect to my workstation over SSH. Moreover this involves exploiting my favourite text editor VIM, which is an instant solution for remote file manipulation and default choice as well. I develop in languages such as C++, OpenCL, CUDA, MPI and CMake; in fact I write lot of code comprising several different files. I can achieve this by opening multiple terminals or using TMUX followed by “vsplit” command in VIM (which I was actually doing). I desired something where my code files are instantly accessible with all features of file and string manipulation. An IDE (Integrated Development Environment) seems an optimum solution for the problem.
Apparently Mac OS has its own good native IDE: Xcode, which I will be using to satisfy my requirement. I was using a similar technique with Eclipse Juno on Ubuntu, which worked seamlessly. However ever since I moved to Mac I was looking for similar kind of solution. Initially I tried Eclipse Juno but that was too slow in this context, Secondly I tried with Xcode, which proved optimal. however one can use any preferable IDE; in my case mine this is Xcode.
Allright I am going to use the Xcode IDE on MBA to develop code that is present on another desktop or server, and is accessible through SSH. In fact Xcode will see the code as it’s native on same machine.
Note: Please be informed this setup requires a decent Internet connection while connecting remotely. In my case I reside approximately 2 km away from work and my workstation and the HPC cluster resides on site at work. Perhaps this solution would be inappropriate for long distance connection or slower bandwidth Internet.
Requirements
SSHFS – a file system client, which will be used to mount remote folders using SSH on your Mac.
FUSE – required by SSHFS to mount file system.
Xcode on your Mac
Accessing remote files on your Mac
To mount remote folders you would need SSHFS installed. If you need help installing SSHFS please refer to the SSHFS website: they have a good installation guide for SSHFS and FUSE. Assuming you have SSHFS installed, you can run the command below:
sshfs username@remoteserver:path-to-remote-directory path-to-local-directory
However using the above approach requires the access password to the machine therefore it is recommended to provide access to the remote machine using a private/public key to avoid typing a password every time one tries to mount. If you are not familiar with configuring SSH access without password this is good article to help you out. I also prefer to provide remote connections with user-friendly names. In which case my SSHFS line will be like the snippet in code block below. It is more convenient to store your SSHFS details inside a script file so that you can just run script file to mount the directories.
sshfs officepc:openmm ~/OpenMM
Eventually on executing the script if SSHFS access is granted you should see your local mount folder name replaced by “OSXFUSE volume 0” prefixed by an eject icon. You can click on this eject image in-order to un-mount the remote directory on your local machine.
Setup Xcode
Now you should view remote files and folders on your Mac so it’s virtually like your own native files and folders unless the SSHFS volume is not mounted. Subsequently you can configure Xcode by adding a new project and further adding files to the project. However when you add files and folder to project you should add “OSXFUSE volume 0”. Further you should see your remote code files and folders listed in the left pane of your Xcode window.
Building you code
By now you should see all your code files on your Xcode interface. You are now ready to edit code but you also have to build that code on remote system. You can achieve this by executing a bash script remotely by adding bash commands inside Xcode. Follow the steps below inside Xcode:
Assuming your project is open inside Xcode, click on Product -> Edit Scheme or alternatively press Command + Option + < on your keyboard.
You shall see a pop-up window, enlarge the build section on top-left corner and then select pre-actions. Click on ‘+’ followed by new run action.
In the shell text box type “/bin/bash”
In the script box you can drag a script file or add bash commands.
Inside the script box the script will be a combination of your SSH URI and your commands to execute. These commands are similar to what you use to compile your code including changing directory. In my case I use CMake to compile my code, in which case the script is
ssh officepc “cd openmm/build4.1; make && make install;”
Eventually you can simply press 'command + b' and build you code on your remote machine.
Conclusion
This technique has proved productive for me, now I can now develop with a good UI, which helps in good code indentation and file manipulation as well. Essentially there is elimination of multiple terminal windows with easier file traversal and text manipulation. Moreover it proved so optimal that, I have been using my development Workstation from my laptop with an external 27" display.
Further Work
I am able to build the code write from Xcode IDE but I can’t view build output therefore I need to find a way to see the build output inside output window. There is another tool called Vagrant which solves similar kind of problem but its moreover intended while dealing with Virtual Machines my further work is to investigate Vagrant in this context.