Hi Guys,
I have become aware of ... something emitting a sound from my case, and I wonder what it could be.
Usually when I work with graphics or games, (especially when I have disabled vertical synchronization) I can hear noises from my GPU. I've always heard noises from it when it's working, so I don't think that is a big deal.
There's not a lot of noise in the room, my speakers are turned off and the loudest noise is from my case fans, which create a constant humming sound, The rest of my machine is relatively quiet (No writes to my SSD, GPU is taking a break).
Just ten minutes half an hour ago, I was messing around with SFMT, some code and allocated a lot of memory upon the initialization of a std::vector.
A firm 100ms "chirp" sounds upon allocation. But I'm not sure if it's really my DIMMS that produce the noise...
I have consumed a 50cl caffeine-rich beverage an hour ago, but I'm convinced I would hear the noise either way.
I have stripped my code down to the parts that cause the sound (and i do realize that I'm not even using the SFMT library, but this is apparently still making a difference.)
Goes "Chirp!"
#include <vector>
#include <cstdlib>
#include <SFMT.h>
const unsigned pop_size = 10000000;
const unsigned seed = 12345;
int main(int argc, char* argv[])
{
sfmt_t sfmt;
sfmt_init_gen_rand(&sfmt, seed);
std::vector< unsigned > pop(pop_size, 0 );
return EXIT_SUCCESS;
}
Noise is lower (how would sfmt interfere with the allocation?)
#include <vector>
#include <cstdlib>
const unsigned pop_size = 10000000;
int main(int argc, char* argv[])
{
std::vector< unsigned > pop(pop_size, 0 );
return EXIT_SUCCESS;
}
Does not go "Chirp!" (there is some noise, but it's low and seems to be much shorter).
#include <vector>
#include <cstdlib>
int main(int argc, char* argv[])
{
std::vector< unsigned > pop(10000000, 0 );
return EXIT_SUCCESS;
}
-Removing the allocation silences the unknown noisy component completely during runtime.
I compile with -O3 -msse2 (And using SFMT, i also use -DHAVE_SSE2 -DSFMT_MEXP=607)
Changing to O2 does little to change the sound.
Now as far as I'm aware, there aren't any mechanical parts prone to moving due to executing my program.
I have two things that I'm curious in finding out:
Why removing SFMT changes the sound of my otherwise independent(?!) initialization; and
What component produces the noise and why.
They didn't cover this in either signal processing or CPU architecture at uni, and I'm no hardware expert.
What could be causing this sound?
(And yeah, it's sort of a silly concern, and I have no idea where else to post about it )