Search Results

Search found 18079 results on 724 pages for 'compiler options'.

Page 287/724 | < Previous Page | 283 284 285 286 287 288 289 290 291 292 293 294  | Next Page >

  • deactivate dynamic contrast on dell xps

    - by Rock
    I am experiencing annoying automatic backlight brightness changes under ubuntu 12.04 LTS on my Dell XPS ultrabook. It seems to be connected to the amount of white pixels on the screen (switching back an forth between dark/light application windows makes the effect noticable, but also just scrolling through a website.) So I think it is the dynamic contrast feature of the notebook screen. How do I turn this off in Ubuntu? Windows offers specific Intel driver options for this, but I can't find any for Ubuntu. EDIT: Model: Dell XPS 14 Ultrabook and currently running Unity

    Read the article

  • How should I select continuous integration tool?

    - by DeveloperDon
    I found this cool comparison table for integration servers on Wikipedia, but I am a little uncertain how to rank the tools vs. my needs and interests. The chart itself seems to have a lot of boxes marked unknown, so if you are comfortable updating it on Wikipedia, that could be great too. Are there a few top performing products so I can quickly narrow down to four or five options? Which products seems to have the largest user communities and most ongoing enhancements and integration with new tools? Are the open source offerings best, or are there high quality tools that can be a great deal for a single user at home? Will use of multiple systems (primary desktop, local only home network server, personal and work notebooks, multiple virtual machines spread across all) create problems and how can they be managed?

    Read the article

  • How to automatically visit a website in the background after Ubuntu booted?

    - by Bakhtiyor
    I wanted to know how to automatically visit a website in the background when Ubuntu loads. As far as I know w3m is for visiting web site from the console. That is why I am writing following command in the crontab -e. @reboot w3m http://example.com/ > test_file The reason for writing content of the web site into a test_file is just to know whether this command has been executed or no. Unfortunately it is not executing every time Ubuntu loads. But next command which comes after it and looks like this: @reboot date >> reboot_file is being executed every time. What is wrong with my command? When I execute it in the console it outputs the content of the example.com into test_file. Is there any other options to do that?

    Read the article

  • Unity-webapps: what to do with the downloaded file?

    - by user104293
    I have installed the unity-webapps package in Ubuntu 12.04. (sudo apt-get install unity-webapps) Now I want to see what the fuss is about, so I go to http://bazaar.launchpad.net/~webapps/webapps-applications/trunk/files/head:/src/ and click on one of the options (e.g. Google Calendar). I download one of the files (GoogleCalendar.user.js). What do I do with this file? Is my webapps working? This is not what I was expecting to happen.

    Read the article

  • Are there efforts to build a collaboratively edited HTML/JS/DOM reference?

    - by Pekka
    W3Schools has a reputation of being incomplete, sometimes incorrect, and ridden with advertising; still, when looking to look up some things or link to documentation when answering a SO question, it still is the only handy cross-browser resource. There are other resources like the Mozilla Developer Network that is doing an increasingly great job documenting JavaScript, and the legendary and great Quirksmode. But they, as brilliant as they are, cover only parts of the areas I am talking about, and provide no community editing and quality control options. Is anybody aware of efforts to create a collaboratively edited, cross-browser HTML/CSS/JavaScript/DOM encyclopedia? If you will, I'm thinking of a challenger to W3Schools like SO was to Experts Exchange. (I thought this more suitable on Programmers than on SO proper - please correct me if I'm wrong.)

    Read the article

  • Hack Your Kindle for Easy Font Customization

    - by Jason Fitzpatrick
    The font options included with the Kindle are certainly serviceable, but why limit yourself? Today we’ll show you how to easily swap out the font files on your Kindle for a completely customized reading experience. Why customize the font? Why not! It’s your ebook reader and if you want the font to be crisper, thicker, look like it belongs on Star Trek, or pack more words per line, there’s no need to let Amazon’s design decisions stand in your way. Today we’re going to show you how you can install new fonts on your Amazon Kindle with free tools and about 20 minutes of tinkering (most of which will be spent waiting for the Kindle to reboot and rebuild the fonts). Hack Your Kindle for Easy Font Customization HTG Explains: What Is RSS and How Can I Benefit From Using It? HTG Explains: Why You Only Have to Wipe a Disk Once to Erase It

    Read the article

  • What camera to choose for using with JMF (Java Media Framework)

    - by Leron
    For the past 2-3 weeks I've been searching for different ways to implement custom video streaming and in more general video capturing and manipulating, going through DVR-cards, Video Capture Cards and stuff like that. Somehow JMF was able to stay out of my sight for all this time, but since I find out about it I'm more and more sure that this is a comfortable level for me to start playing around with video and stuff. One major topic that occurs to me while searching for more info was the presence of many posts where people were complaining about the fact that any particular camera ( most of the time I think they mean web cameras) doesn't work with JMF. Even though there are a lot of different cameras (not necessarily a web cam) that are not that expensive I want to play it safe and buy one that is proven to work well with the JMF. Also due to lack of experience maybe this is irrelevant but since I'll buy the camera mostly for learning and experimenting I want to have the maximum freedom possible to mess with different features, options and so on.

    Read the article

  • Which version control system to use?

    - by deshmukh
    I am looking at using a version control system to ensure that I can go back in time to a particular version for all documents in ~, if I have to. What is the best suited tool for this given that: I am without much experience in version control systems Several files will be plain text files but there will be some Libre-Office files also The tool should: Be easy to set-up, run and maintain Have easy to understand configuration options (what directories to track, for how long, how frequently the changes should be captured, etc.) Ideally have a GUI front also Be able to recover deleted files What is the best/ most widely used tool that will be suitable for me?

    Read the article

  • How can I upgrade to Lubuntu 14.04.1 withot a PAE kernel?

    - by Richard
    On my Dell Latitude D800 laptop, which has an old Pentium M without PAE support, I was able to successfully install Lubuntu 14.04 from the CD. When I try to upgrade, I get the error: PAE not enabled Your system uses a CPU that does not have PAE enabled. Ubuntu only supports non-PAE systems up to Ubuntu 12.04. To upgrade to a later version of Ubuntu, you must enable PAE (if this is possible) see: http://help.ubuntu.com/community/EnablingPAE I have seen the Communit Wiki page for PAE. The suggestion is to add forcepae to the command line options. When I do this, I get the same message. Moreover, dmesg does not indicate PAE was ever enabled. Is there anything else I can ry to get Lubuntu to upgrade correctly?

    Read the article

  • Grab sound of a SDL game with ffmpeg/avconv

    - by Peregring-lk
    I'm trying to make a screencast of a SDL game which I developed some years ago, with the following command: sleep 5 && avconv -f x11grab -s 1366x768 -r 25 -i :0.0 -same_quant screen_cast.mkv (in this 5 seconds of sleep, I open the game). But the generated video (screen_cast.mkv) doesn't capture audio. I use for my game the SDL_Mixer library, with default configuration (22050 for frequency, AUDIO_S16SYS for format, and 2 channels). What's the problem? (with options -f alsa -i pulse it doesn't work either).

    Read the article

  • Why is using C++ libraries is so complicated?

    - by Pius
    First of all, I want to note I love C++ and I'm one of those people who thinks it is easier to code in C++ than Java. Except for one tiny thing: libraries. In Java you can simply add some jar to the build path and you're done. In C++ you usually have to set multiple paths for the header files and the library itself. In some cases, you even have to use special build flags. I have mainly used Visual Studio, Code Blocks and no IDE at all. All 3 options do not differ much when talking about using external libraries. I wonder why was there made no simpler alternative for this? Like having a special .zip file that has everything you need in one place so the IDE can do all the work for you setting up the build flags. Is there any technical barrier for this?

    Read the article

  • Ops Center Update 2 is available!

    - by Owen Allen
    Oracle Enterprise Manager Ops Center Release 1, Update 2 (12.1.2.0.0) is available. This release includes support for Oracle Solaris 11.1 and Oracle Linux 6.3, the ability to attach a network multiple times to an LDom guest using the same vswitch, support for HMP 2.2.3, improved options for adding users from remote directory servers, and a few other useful features. A list of new features is in What's New. You can view the documentation online, or you can download a zip file of the library from the Overview tab. If you're running Ops Center in connected mode, the updates are delivered to the UI. If you are in disconnected mode or have not yet installed Ops Center, you can go to the Ops Center download page to get the latest release. Before installing or upgrading to Ops Center 12c Update 2, review the Release Notes for things to watch out for, then see the upgrade instructions in the Administration Guide.

    Read the article

  • Right tool for the job(html5 vs silverlight)

    - by Jargo
    I have been tasked to develop a web based offer request application for bathrooms and I am asking opinions on which tool should I choose. I have narrowed options down to two (html5 and silverlight). Most of the application consists of basic UI elements that could be achieved with html4. However most challenging part is the design view for the bathroom. User first defines size of the bathroom by giving dimensions. When the dimensions are defined the application renders an empty bathroom floorplan and user can start dragging&dropping furniture on to it. Some furniture have rules where they can be dragged. For example sinks can only be dragged next to a wall. I know that this functionality can be achieved with silverlight but what about html5 ? I know that Canvas element can be used to draw graphics, but can it render the bathroom smoothly as user drags a piece furniture on it?

    Read the article

  • Ubuntu slow on HP 2000 notebook with Apu e1-1200

    - by user169861
    I am using HP 2000 notebook which initially came with Windows 7 64bit. It has 4gb ram, AMD APU E1-1200 (1.4ghz) with Radeon 7310. With Windows it worked ok, so I decided to switch to Ubuntu. I installed 13.04 64bit at first, but responsiveness wasn't that good (opening windows, menus, Firefox, dash search) even if it was way better during the testing from live USB. I tried different kind of drivers for graphic card, 13.6beta, 13.4, fgrlx proprietary, upgraded kernel but the situation was the same. Then I tried installing 32bit version but the results were identical. After that I tried LTS version 12.04 and Xubuntu 13.04.. Responsiveness wasn't that different at all. Not sure what to do, and I wouldn't want to go back to Windows. This machine is not a beast, but it should be enough to deal with Unity or Xfce without troubles. Oh yes, I have insydeH20 BIOS with not so many options at my disposal. Thanks and best regards,

    Read the article

  • How to visit automatically a website in the background after Ubuntu loads

    - by Bakhtiyor
    I wanted to know how to automatically visit a website in the background when Ubuntu loads. As far as I know w3m is for visiting web site from the console. That is why I am writing following command in the crontab -e. @reboot w3m http://example.com/ > test_file The reason for writing content of the web site into a test_file is just to know whether this command has been executed or no. Unfortunately it is not executing every time Ubuntu loads. But next command which comes after it and looks like this: @reboot date >> reboot_file is being executed every time. What is wrong with my command? Because when I execute it in the console it output content of the example.com into test_file. Is there any other options to do that?

    Read the article

  • Guide to particulars in customizing Ubuntu Installer

    - by Oxwivi
    I've tried reading through guides for preseeding and customization, but I did not understand how and where to modify which options. I can only comfortably learn through practical examples, for which I ask this question. I am looking into preseeding and customizing solution to just do a few specific tasks: Completely rewrite the packages installed by default, much like minimal installs and with the --no-install-recommends flag of apt-get. Add a few proprietary applications to the default install list Automatically install and mount proprietary drivers on install and live session Edit the default configuration files for applications installed by default Specify partitions along with permission Modify the package pool in the installer media (CD/DVD/USB), preferably using command line tools similar to apt-get and aptitude. Can anyone please tell me how to configure preseed option to only do the above? NB I do not understand the GPG part after adding/removing packages in the pool. PS The third point is of particular importance.

    Read the article

  • How can I install canon pixma ip100 driver for Ubuntu 12.04LTS 64bit?

    - by kina
    I tried installing the driver by typing the following commands in the terminal: sudo add-apt-repository ppa:michael-gruz/canon - the result was the following: You are about to add the following PPA to your system: More info: https://launchpad.net/~michael-gruz/+archive/canon Press [ENTER] to continue or ctrl-c to cancel adding it Then I typed: sudo apt-get update - the result was the following: Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.HDuHmOSJ0l --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80/ --recv 84E550CD36EC35430A66AC5A03396E1C3F7B4A1D gpg: requesting key 3F7B4A1D from hkp server keyserver.ubuntu.com gpg: key 3F7B4A1D: "Launchpad Misakovi" not changed gpg: Total number processed: 1 gpg: unchanged: 1 I typed the next command: sudo apt-get install cnijfilter-ip100series The return response was: Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package cnijfilter-ip100series Does anyone know the solution? Kina

    Read the article

  • No boot record when installing 13.04 from USB on WinXP

    - by Phil Leslie
    I'm replacing WinXP with 13.04 on an older PC using wubi.exe on a USB stick. I had no problem changing the BIOS on another system that was a bit newer but when I change the settings on the older PC to boot from USB, I get a DOS message saying "Searching for boot record...Not found" & asked to try again. I don't have the ability to boot from a live CD so is there a reason why I can boot from a USB on a newer computer but can't from an older one? Both have options to choose to boot from USB, but the older one can find no boot record. The system was built on 12/13/01 by American Megatrends. Since I don't have enough "reputation points" to post the screen shot image, you can see it at http://img.photobucket.com/albums/v633/boonevillephil/1029131748-00.jpg.

    Read the article

  • Where can I get a list of SCHEMA / PATH / KEY to use with gsettings?

    - by Sri
    After doing some research, I found that I can quickly set configuration options using the gsettings command in the terminal, instead of installing dconf-editor or gconf-editor or CCSM. But we need the SCHEMA/PATH and KEY to set the value. Syntax is: gsettings set SCHEMA[:PATH] KEY VALUE For example to never auto-hide the launcher: gsettings set com.canonical.Unity2d.Launcher hide-mode 0 And, for windows not to overlap the launcher: gsettings set com.canonical.Unity2d.Launcher use-strut true So, where can I get a list of all the SCHEMA / PATH / KEY that can be set with gsettings? No, please don't suggest the gsettings list-keys command, because I don't know the possibly hundreds of schema available.

    Read the article

  • Des applications fleurissent sur la toile pour gérer la confidentialité sur Facebook, afin de protég

    Mise à jour du 18.05.2010 par Katleen Des applications fleurissent sur la toile pour gérer la confidentialité sur Facebook, afin de protéger facilement ses données personnelles Avec de plus en plus de changements dans ses paramètres de confidentialité, Facebook devient un site Internet compliqué à paramétrer pour certains. En effet, le réseau social offre pas moins de 50 paramètres assortis à plus de 70 options, pour contrôler ce que le Net peut voir de vous... Pour preuve, ce graphique publié la semaine dernière par le New York Times illustrant toutes les configurations disponibles : [IMG]http://graphics8.nytimes.com/packages/images/newsgraphics/2010/0512-facebook/gif1.jpg[/IMG]...

    Read the article

  • ejabberd won't look at my host_config option

    - by John
    I'm new with ejabberd. What I want is to have a host myhost.domain.com which has an ldap authentication method. This all works fine if i modify the global options in AUTHENTICATION section in my ejabberd.cfg file. I am able to create two clients( defined in my LDAP directory ), and comunicate between them. Like i said, this works fine. But by aplying this authentication method globaly, it means that every hostname that i declare must use that. So i'm looking at {host_config, "myhost.domain.com" ...} But somehow i can't get ejabberd to look at that configuration, it just skips it. If i declare it like: {xhost_config, ...}, than in my ejabberd.log file i get a bad return error( so it knows that the configuration is there, but it won't look at it). Any suggestions? Thanks.

    Read the article

  • One of my user accounts logs in without desktop environment

    - by Bill Cheatham
    When I log in to my main user account on Ubuntu 11.10 ,the desktop environment (unity bar, clock, volume control, etc.) is not there. All I have is the desktop background with a menu bar across the top which appears to be for nautilus (options like File-New folder). My other accounts log in like normal. I have recently followed these instructions to give my main user account access to an OSX partition, but I think I have logged in successfully since then. I am able to get a terminal by pressing ctrl+alt+t, but when I typed unity the whole thing crashed. Is there anything I can do to fix this? I have a separate administrator account I can use if needed.

    Read the article

  • is a merchant account a requirment for a website to take payments..

    - by calum
    Hi, I have had a quick look but couldn't see anything related. Basically, if we were to accept payments for events on our website, via paypal (essentially a Buy it now! button), as a business, do we need a merchant's account, or will a regular bank account be acceptable? I may have some confusion in terms. My understanding is you need a merchant's account to accept credit card payments, but as we are using PayPal, is this necessary? Thank you for any clarification. disclaimer - I've read What are some options for taking payments on my website? but it doesn't explicitly say if we require a merchant account or not. Thank you.

    Read the article

  • .NET Code Evolution

    - by Alois Kraus
    Originally posted on: http://geekswithblogs.net/akraus1/archive/2013/07/24/153504.aspxAt my day job I do look at a lot of code written by other people. Most of the code is quite good and some is even a masterpiece. And there is also code which makes you think WTF… oh it was written by me. Hm not so bad after all. There are many excuses reasons for bad code. Most often it is time pressure followed by not enough ambition (who cares) or insufficient training. Normally I do care about code quality quite a lot which makes me a (perceived) slow worker who does write many tests and refines the code quite a lot because of the design deficiencies. Most of the deficiencies I do find by putting my design under stress while checking for invariants. It does also help a lot to step into the code with a debugger (sometimes also Windbg). I do this much more often when my tests are red. That way I do get a much better understanding what my code really does and not what I think it should be doing. This time I do want to show you how code can evolve over the years with different .NET Framework versions. Once there was  time where .NET 1.1 was new and many C++ programmers did switch over to get rid of not initialized pointers and memory leaks. There were also nice new data structures available such as the Hashtable which is fast lookup table with O(1) time complexity. All was good and much code was written since then. At 2005 a new version of the .NET Framework did arrive which did bring many new things like generics and new data structures. The “old” fashioned way of Hashtable were coming to an end and everyone used the new Dictionary<xx,xx> type instead which was type safe and faster because the object to type conversion (aka boxing) was no longer necessary. I think 95% of all Hashtables and dictionaries use string as key. Often it is convenient to ignore casing to make it easy to look up values which the user did enter. An often followed route is to convert the string to upper case before putting it into the Hashtable. Hashtable Table = new Hashtable(); void Add(string key, string value) { Table.Add(key.ToUpper(), value); } This is valid and working code but it has problems. First we can pass to the Hashtable a custom IEqualityComparer to do the string matching case insensitive. Second we can switch over to the now also old Dictionary type to become a little faster and we can keep the the original keys (not upper cased) in the dictionary. Dictionary<string, string> DictTable = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); void AddDict(string key, string value) { DictTable.Add(key, value); } Many people do not user the other ctors of Dictionary because they do shy away from the overhead of writing their own comparer. They do not know that .NET has for strings already predefined comparers at hand which you can directly use. Today in the many core area we do use threads all over the place. Sometimes things break in subtle ways but most of the time it is sufficient to place a lock around the offender. Threading has become so mainstream that it may sound weird that in the year 2000 some guy got a huge incentive for the idea to reduce the time to process calibration data from 12 hours to 6 hours by using two threads on a dual core machine. Threading does make it easy to become faster at the expense of correctness. Correct and scalable multithreading can be arbitrarily hard to achieve depending on the problem you are trying to solve. Lets suppose we want to process millions of items with two threads and count the processed items processed by all threads. A typical beginners code might look like this: int Counter; void IJustLearnedToUseThreads() { var t1 = new Thread(ThreadWorkMethod); t1.Start(); var t2 = new Thread(ThreadWorkMethod); t2.Start(); t1.Join(); t2.Join(); if (Counter != 2 * Increments) throw new Exception("Hmm " + Counter + " != " + 2 * Increments); } const int Increments = 10 * 1000 * 1000; void ThreadWorkMethod() { for (int i = 0; i < Increments; i++) { Counter++; } } It does throw an exception with the message e.g. “Hmm 10.222.287 != 20.000.000” and does never finish. The code does fail because the assumption that Counter++ is an atomic operation is wrong. The ++ operator is just a shortcut for Counter = Counter + 1 This does involve reading the counter from a memory location into the CPU, incrementing value on the CPU and writing the new value back to the memory location. When we do look at the generated assembly code we will see only inc dword ptr [ecx+10h] which is only one instruction. Yes it is one instruction but it is not atomic. All modern CPUs have several layers of caches (L1,L2,L3) which try to hide the fact how slow actual main memory accesses are. Since cache is just another word for redundant copy it can happen that one CPU does read a value from main memory into the cache, modifies it and write it back to the main memory. The problem is that at least the L1 cache is not shared between CPUs so it can happen that one CPU does make changes to values which did change in meantime in the main memory. From the exception you can see we did increment the value 20 million times but half of the changes were lost because we did overwrite the already changed value from the other thread. This is a very common case and people do learn to protect their  data with proper locking.   void Intermediate() { var time = Stopwatch.StartNew(); Action acc = ThreadWorkMethod_Intermediate; var ar1 = acc.BeginInvoke(null, null); var ar2 = acc.BeginInvoke(null, null); ar1.AsyncWaitHandle.WaitOne(); ar2.AsyncWaitHandle.WaitOne(); if (Counter != 2 * Increments) throw new Exception(String.Format("Hmm {0:N0} != {1:N0}", Counter, 2 * Increments)); Console.WriteLine("Intermediate did take: {0:F1}s", time.Elapsed.TotalSeconds); } void ThreadWorkMethod_Intermediate() { for (int i = 0; i < Increments; i++) { lock (this) { Counter++; } } } This is better and does use the .NET Threadpool to get rid of manual thread management. It does give the expected result but it can result in deadlocks because you do lock on this. This is in general a bad idea since it can lead to deadlocks when other threads use your class instance as lock object. It is therefore recommended to create a private object as lock object to ensure that nobody else can lock your lock object. When you read more about threading you will read about lock free algorithms. They are nice and can improve performance quite a lot but you need to pay close attention to the CLR memory model. It does make quite weak guarantees in general but it can still work because your CPU architecture does give you more invariants than the CLR memory model. For a simple counter there is an easy lock free alternative present with the Interlocked class in .NET. As a general rule you should not try to write lock free algos since most likely you will fail to get it right on all CPU architectures. void Experienced() { var time = Stopwatch.StartNew(); Task t1 = Task.Factory.StartNew(ThreadWorkMethod_Experienced); Task t2 = Task.Factory.StartNew(ThreadWorkMethod_Experienced); t1.Wait(); t2.Wait(); if (Counter != 2 * Increments) throw new Exception(String.Format("Hmm {0:N0} != {1:N0}", Counter, 2 * Increments)); Console.WriteLine("Experienced did take: {0:F1}s", time.Elapsed.TotalSeconds); } void ThreadWorkMethod_Experienced() { for (int i = 0; i < Increments; i++) { Interlocked.Increment(ref Counter); } } Since time does move forward we do not use threads explicitly anymore but the much nicer Task abstraction which was introduced with .NET 4 at 2010. It is educational to look at the generated assembly code. The Interlocked.Increment method must be called which does wondrous things right? Lets see: lock inc dword ptr [eax] The first thing to note that there is no method call at all. Why? Because the JIT compiler does know very well about CPU intrinsic functions. Atomic operations which do lock the memory bus to prevent other processors to read stale values are such things. Second: This is the same increment call prefixed with a lock instruction. The only reason for the existence of the Interlocked class is that the JIT compiler can compile it to the matching CPU intrinsic functions which can not only increment by one but can also do an add, exchange and a combined compare and exchange operation. But be warned that the correct usage of its methods can be tricky. If you try to be clever and look a the generated IL code and try to reason about its efficiency you will fail. Only the generated machine code counts. Is this the best code we can write? Perhaps. It is nice and clean. But can we make it any faster? Lets see how good we are doing currently. Level Time in s IJustLearnedToUseThreads Flawed Code Intermediate 1,5 (lock) Experienced 0,3 (Interlocked.Increment) Master 0,1 (1,0 for int[2]) That lock free thing is really a nice thing. But if you read more about CPU cache, cache coherency, false sharing you can do even better. int[] Counters = new int[12]; // Cache line size is 64 bytes on my machine with an 8 way associative cache try for yourself e.g. 64 on more modern CPUs void Master() { var time = Stopwatch.StartNew(); Task t1 = Task.Factory.StartNew(ThreadWorkMethod_Master, 0); Task t2 = Task.Factory.StartNew(ThreadWorkMethod_Master, Counters.Length - 1); t1.Wait(); t2.Wait(); Counter = Counters[0] + Counters[Counters.Length - 1]; if (Counter != 2 * Increments) throw new Exception(String.Format("Hmm {0:N0} != {1:N0}", Counter, 2 * Increments)); Console.WriteLine("Master did take: {0:F1}s", time.Elapsed.TotalSeconds); } void ThreadWorkMethod_Master(object number) { int index = (int) number; for (int i = 0; i < Increments; i++) { Counters[index]++; } } The key insight here is to use for each core its own value. But if you simply use simply an integer array of two items, one for each core and add the items at the end you will be much slower than the lock free version (factor 3). Each CPU core has its own cache line size which is something in the range of 16-256 bytes. When you do access a value from one location the CPU does not only fetch one value from main memory but a complete cache line (e.g. 16 bytes). This means that you do not pay for the next 15 bytes when you access them. This can lead to dramatic performance improvements and non obvious code which is faster although it does have many more memory reads than another algorithm. So what have we done here? We have started with correct code but it was lacking knowledge how to use the .NET Base Class Libraries optimally. Then we did try to get fancy and used threads for the first time and failed. Our next try was better but it still had non obvious issues (lock object exposed to the outside). Knowledge has increased further and we have found a lock free version of our counter which is a nice and clean way which is a perfectly valid solution. The last example is only here to show you how you can get most out of threading by paying close attention to your used data structures and CPU cache coherency. Although we are working in a virtual execution environment in a high level language with automatic memory management it does pay off to know the details down to the assembly level. Only if you continue to learn and to dig deeper you can come up with solutions no one else was even considering. I have studied particle physics which does help at the digging deeper part. Have you ever tried to solve Quantum Chromodynamics equations? Compared to that the rest must be easy ;-). Although I am no longer working in the Science field I take pride in discovering non obvious things. This can be a very hard to find bug or a new way to restructure data to make something 10 times faster. Now I need to get some sleep ….

    Read the article

  • How can I set my screen resolution to match my TV?

    - by Scott Severance
    I have a computer in my classroom that's connected to an LG smart TV (that's actually not so smart. I wouldn't recommend buying one.). For the touch interface, the TV wants a resolution of 1920x1080 at 60Hz. However, I can't seem to set the computer to that resolution. The display settings only offer 1024x768 and 640x480. The computer dual boots with Windows XP, where widescreen options are available in approximately the required size, but the exact resolution -- or even aspect ratio-- isn't available in XP either. I tried the following command: xrandr -s 1920x1080 -r 60 The response was: Size 1920x1080 not found in available modes Back in the old days, the solution would be to edit xorg.conf. However, since that file no longer exists, and I haven't found up-to-date info, I don't know what else to do. If it helps, this machine will never be connected to a different display, so resolution flexibility isn't important. Here's the output of lshw: *-display:0 description: VGA compatible controller product: 4 Series Chipset Integrated Graphics Controller vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 03 width: 64 bits clock: 33MHz capabilities: vga_controller bus_master cap_list rom configuration: driver=i915 latency=0 resources: irq:42 memory:fe800000-febfffff memory:d0000000-dfffffff ioport:ecd8(size=8) *-display:1 UNCLAIMED description: Display controller product: 4 Series Chipset Integrated Graphics Controller vendor: Intel Corporation physical id: 2.1 bus info: pci@0000:00:02.1 version: 03 width: 64 bits clock: 33MHz According to the system settings, my graphics driver is unknown and my "experience" is standard. This is 64-bit Ubuntu 12.04 (Precise) Note: There are a number of similar questions to this one, but they didn't include any answers that helped me. Update After posting this question, I noticed one in the sidebar that I hadn't found through search but which appeared to contain the answer. Based on that question, I created the /etc/X11/xorg.conf file below: Section "ServerLayout" Identifier "X.org Configured" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection Section "Files" ModulePath "/usr/lib/xorg/modules" FontPath "/usr/share/fonts/X11/misc" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" FontPath "built-ins" EndSection Section "Module" Load "glx" Load "dri2" Load "dbe" Load "dri" Load "record" Load "extmod" EndSection Section "InputDevice" Identifier "Keyboard0" Driver "kbd" EndSection Section "InputDevice" Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5 6 7" EndSection Section "Monitor" Identifier "Monitor0" VendorName "LG" ModelName "Smart TV" EndSection Section "Device" ### Available Driver options are:- ### Values: <i>: integer, <f>: float, <bool>: "True"/"False", ### <string>: "String", <freq>: "<f> Hz/kHz/MHz", ### <percent>: "<f>%" ### [arg]: arg optional #Option "DRI" # [<bool>] #Option "ColorKey" # <i> #Option "VideoKey" # <i> #Option "FallbackDebug" # [<bool>] #Option "Tiling" # [<bool>] #Option "LinearFramebuffer" # [<bool>] #Option "Shadow" # [<bool>] #Option "SwapbuffersWait" # [<bool>] #Option "TripleBuffer" # [<bool>] #Option "XvMC" # [<bool>] #Option "XvPreferOverlay" # [<bool>] #Option "DebugFlushBatches" # [<bool>] #Option "DebugFlushCaches" # [<bool>] #Option "DebugWait" # [<bool>] #Option "HotPlug" # [<bool>] #Option "RelaxedFencing" # [<bool>] Identifier "Card0" Driver "intel" BusID "PCI:0:2:0" EndSection Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 #SubSection "Display" # Viewport 0 0 # Depth 1 #EndSubSection #SubSection "Display" # Viewport 0 0 # Depth 4 #EndSubSection #SubSection "Display" # Viewport 0 0 # Depth 8 #EndSubSection #SubSection "Display" # Viewport 0 0 # Depth 15 #EndSubSection #SubSection "Display" # Viewport 0 0 # Depth 16 #EndSubSection SubSection "Display" Viewport 0 0 Depth 24 Modes "1024x768" "1920x1080" EndSubSection EndSection According to /var/log/Xorg.0.log, my settings aren't being applied. In fact, I wonder if the config file is even being read. [ 1209.083] (**) intel(0): Depth 24, (--) framebuffer bpp 32 [ 1209.084] (==) intel(0): RGB weight 888 [ 1209.084] (==) intel(0): Default visual is TrueColor [ 1209.084] (II) intel(0): Integrated Graphics Chipset: Intel(R) G41 [ 1209.084] (--) intel(0): Chipset: "G41" [ 1209.084] (**) intel(0): Relaxed fencing enabled [ 1209.084] (**) intel(0): Wait on SwapBuffers? enabled [ 1209.084] (**) intel(0): Triple buffering? enabled [ 1209.084] (**) intel(0): Framebuffer tiled [ 1209.084] (**) intel(0): Pixmaps tiled [ 1209.084] (**) intel(0): 3D buffers tiled [ 1209.084] (**) intel(0): SwapBuffers wait enabled [ 1209.084] (==) intel(0): video overlay key set to 0x101fe [ 1209.172] (II) intel(0): Output VGA1 using monitor section Monitor0 [ 1209.260] (II) intel(0): EDID for output VGA1 [ 1209.260] (II) intel(0): Printing probed modes for output VGA1 [ 1209.260] (II) intel(0): Modeline "1024x768"x60.0 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync (48.4 kHz) [ 1209.260] (II) intel(0): Modeline "800x600"x60.3 40.00 800 840 968 1056 600 601 605 628 +hsync +vsync (37.9 kHz) [ 1209.260] (II) intel(0): Modeline "800x600"x56.2 36.00 800 824 896 1024 600 601 603 625 +hsync +vsync (35.2 kHz) [ 1209.260] (II) intel(0): Modeline "848x480"x60.0 33.75 848 864 976 1088 480 486 494 517 +hsync +vsync (31.0 kHz) [ 1209.260] (II) intel(0): Modeline "640x480"x59.9 25.18 640 656 752 800 480 489 492 525 -hsync -vsync (31.5 kHz) [ 1209.260] (II) intel(0): Output VGA1 connected [ 1209.260] (II) intel(0): Using user preference for initial modes [ 1209.260] (II) intel(0): Output VGA1 using initial mode 1024x768 [ 1209.260] (II) intel(0): Using default gamma of (1.0, 1.0, 1.0) unless otherwise stated. [ 1209.260] (II) intel(0): Kernel page flipping support detected, enabling [ 1209.260] (==) intel(0): DPI set to (96, 96)

    Read the article

< Previous Page | 283 284 285 286 287 288 289 290 291 292 293 294  | Next Page >