text:
doddlePRO is an amazing mobile international Film and Television Production Resource Directory integrated with digital interactive Call Sheets. Now we are offering in-app purchase Subscriptions to receive our in-depth doddle daily News and the ability to remove the watermark off of the Shared PDF Call Sheets. With this app you will also have access to our online interface for call sheet creation.
Manage crews effortlessly for Film, Television, Stage and Events
"Wicked Simple" Tommy Post Senior Production Manager EXTRA
"doddlePRO is genius ...We finally have a production tool that really works!" Stephanie Wrate
Production Manager, 5 Creative/Channel 5 UK
doddle's resource directory features all resources that touch the production world from Producers, Directors, Photographers, Grips, Gaffers, Sound, Talent, Hotels, Restaurant, Catering and Transportation, etc. doddle puts the industry at your fingertips.
doddlePRO has all the features of doddle plus the ability to create, edit, sync and distribute digital and PDF versions of your Call Sheet
*New Group SMS and Email communication by individual or department on your Call sSeet.
*Call Sheets Are Synced and Saved In The Cloud
*Sync your Call Sheets with web based - doddlePRO Online (subscription required)
*Sync unlimited Favorites Lists
*Add Images to make your Locations, Schedules, and Talent sections come alive
*Add Crew/Vendors From your Local Contacts, Manually, or from the doddle Directory Right Into Your Call Sheet
*Auto - Update Weather and Emergency Info for your Shoot or Event For Each Date/Location
*GPS Marking For Location Scouting right in the app. Audio Turn by Turn Directions with IOS 6.
*Send Internal Call Sheet Notes to any member right in your Call Sheet.
*Receive Call Sheet email delivery reports after every send
*Assign Editing rights to your call sheet
*Assign Individual call times to your crew (Choose Report, OnCall, or Pickup) , cascade time changes by department or universally
*Add Call Sheet resources from your doddle "favorites", "recents", and "prior call sheets"
*Display 2-way radio Channels by Departments
*Instantly copy and rename your call sheets
The doddle Directory
*Free to List, Free To Register, Free to Search (Optional upgrades available)
*Search 100's of categories for vendors, crew, talent, Film Offices and State Agencies
*Find Professional Vendors, Crew, Talent, Locations, and Film Offices by Distance from search target area, closest to your other contacts or from "where you're standing"
*Premium Listings available for Purchase include detailed bios, Resumes/CV's, Photos/Headshots, and Full Motion videos linked from Youtube
*Communicate Instantly with listings via phone, SMS, Email
*Create Unlimited Favorites Groups..favorite sound guys in la, favorite Grips in New Orleans,...you decide
*International Guide - Including US, UK, Canada, and South Africa
Subscription Details:
The Subscription allows you to unlock all news categories in our doddleNEWS section
The Subscription allows you to release the watermark on all shared PDF's when sending call sheets
Length and Price of Subscription -You can subscribe with three different options: Monthly, for $11.99/month; Quarterly, for $29.99/quarter, or save big with a Yearly subscription for $99.00/year.
Additional Notes
- Payment will be charged to iTunes Account at confirmation of purchase
- Subscription automatically renews unless auto-renew is turned off at least 24-hours before the end of the current period
- Account will be charged for renewal within 24-hours prior to the end of the current period, and identify the cost of the renewal
- Subscriptions may be managed by the user and auto-renewal may be turned off by going to the user's Account Settings after purchase
- No cancellation of the current subscription is allowed during active subscription period
What's New
Version 3.6 (Aug 10, 2013)
minor bug fixes
in-app purchase for pro content subscription and call sheets
improved image selection
better ipad features for Doddle listings
Version 3.5.2 (Apr 19, 2013)
minor bug fixes
Version 3.5.1 (Apr 10, 2013)
minor bug fixes
Version 3.5 (Mar 18, 2013)
PDF Preview Call Sheet (found under the send button)
doddle news is now inside this app
Minor bug fixes
Version 3.3.2 (Dec 25, 2012)
- Improvements to Registration
- Weather improvements in non US Callsheet Locations
- Minor bug fixes
Version 3.3 (Nov 14, 2012)
Added Default settings view for Call Sheet creation. You can edit them if you have online subscription.
Added Adjust Call Times by "Department" inside your call sheet editor.
Added send SMS texts and emails without the call sheet attached to individuals, departments or your entire call sheet if you input their mobile number and or email.
Added contact history from past and future call sheets, so now you can add entities into the call sheet that have been in Prior Call Sheets, with a push of a button.
Added "report a bad Listing" feature allowing you to report to us if a listing in the directory has incorrect information.
Added improved sorting feature for the call sheets you create or receive.
Minor Bug Fixes
Version 3.2.2 (Oct 13, 2012)
Support for iOS 6
Support for iPhone 5 Retina Display
Added Improved Sorting Feature for Call Sheets
Version 3.2.1 (Oct 01, 2012)
Fixed Major Big to work in iOS 6
Added New User Interface for Call Sheet Editing
Version 3.2 (Sep 21, 2012)
**** iOS 6 Ready******
Added New User Interface for Editing Call Sheets
Fixed Minor Bugs
Version 3.1.1 (Aug 31, 2012)
Fixed Bug with Premium Content Not Displaying Properly
Version 3.1 (Aug 14, 2012)
New feature that allows users to view your custom sorting of Sections, Departments and Entities in the Call Sheet on an iOS device if you also subscribe to the doddlePRO online desktop version.
Version 3.0 (Jul 30, 2012)
Updated Dynamic User Interface
New Dynamic Contact Listing interface
New Call Sheet Contact Listing Views
New Location Views Interface
New UI for Premium Listings' Content
New Bio View for Premium listings
New Categories Views
Fixed Image sync issue in call Sheets
Favorites Sync With Server
Improved Weather Display
Fixed minor Bugs.
Fixed keyboard Bugs in lat long edit view
Fixed Bug with sorting by rating in Directory
Fixed Bug with adjusting calltimes when modifying the call type; Pick Up, On Call, Report, etc
Fixed Bug with sending callsheets and permissions due to case sensitive string comparison
Version 2.3 (May 11, 2012)
Now Showing Audio Player for doddle Premium Contacts
Improved Geolocation Services
Added LAT LONG features in call sheet location sections
Minor Bug Fixes
Version 2.2.1 (Apr 29, 2012)
Fixed bug when adding images to call sheet
fixed minor syncing bug
improved UI features and icons
Version 2.2 (Apr 12, 2012)
Fixed Image in Premium listings
fixed send features for Call Sheet
Fixed Contact Detail View on call Sheets
Fixed and Updated Sync Issues
Fixed and Updated Location viewing in Call Sheet
Fixed Minor Bug issues
Added More Robust Undelete Call Sheet
Fixed Auto Weather and Sunrise/Sunset issues
Modified Call Sheet Display issues
Version 2.01 (Mar 05, 2012)
1. Major Bug Fixes
2. UI Improvements
3. Fixed Syncing issues with the server
4. Minor Big Fixes
5. Fixed Image Syncing Issues
Version 2.0 (Jan 20, 2012)
***This is a major Upgrade, Please make sure you do not update until you have mailed yourself any working call sheet on your older version. This is for safety so you do not loose any data on a call sheet you have been working with or about to use - Again this is just a safety precaution*****
Sync your Call Sheets on our Secure Server
Sync your Call Sheets with our desktop Version - doddlePRO Online (subscription required)
Add Images to your Locations, Schedules, and Talent sections
UI Updates
Crash Report Features
Major and Minor Bug Fixes
Version 1.2.3 (Oct 28, 2011)
Fixed iOS 5 Bug issues
Fixed Other Mail and Send Bugs
Added enhancements to get ready for doddlePRO 2 coming out soon.
Version 1.2.2 (Apr 18, 2011)
- Added expanding and scrollable categories view inside each listing.
- Identified and addressed some performance improvements inside the Call Sheet function.
- Fixed a bug that was randomly causing the Call Sheet function to freeze and even possibly crash the application.
Version 1.2.1 (Apr 03, 2011)
- When doing a search by name, we've added an Info icon next to each search result, that when pressed, expands to display all of the different categories for that listing.
- When viewing a listing profile, we've added a button to view the categories for that specific listing. When this button is pressed, a new view is presented listing out all of the different categories for that listing.
- Performance improvements in Search and Search Results.
- Enhanced the keyword searching functionality.
Version 1.2 (Mar 17, 2011)
- Added the ability to find listings by keywords
- Enhancements to server requests
- Urls and Social links load within the app now, vs loading a separate Safari window
Version 1.1 (Feb 11, 2011)
- Call Sheets now support the United States and the United Kingdom.
- Added search by country option, with the following countries now available: United States, United Kingdom, England, Scotland, Wales, N. Ireland.
- Added social networking to listings that have entered this data in the registration process at www.doddleme.com
- Performance improvements on searching.
Version 1.0.1 (Jan 19, 2011)
- Enhancements to the process of sending the call sheets Manually, Individually and by Department.
- Improvements on managing multiple call sheets at once.


text:
How To Create 14 Sparkly Craft Projects Using Krylon Glitter Blast
Bonus: Get our newsletter & special offers for free. We will not share or sell your email address. View our Privacy Policy
By: Maria Del Pinto for FaveCrafts.com
We are adding the craft to your Craft Projects.
The project was added to your Craft Projects.
Click here to view your Craft Projects.
DIY party crafts can turn a boring gathering into a unique affair. Don't just hand out sweet treats this year; instead, use your paper crafting skills and PLUS America Decoration Rollers to create a Rosette Cupcake Topper. It's a fun and simple way to decorate your favorite food.
- Plus Decoration Mini Roller (Red Ribbon pattern)
- Plus Decoration Roller (Cupcakes)
- Two different colors of card stock
- White piece of paper
- Glue stick, glue dots or hot glue gun
- Scissors
- Ruler
- Toothpick
- Wire
- Charm
- Round nose pliers
- Jewelry adhesive
Use the cupcake roller and stamp the image onto a piece of white paper. Choose one of the images and cut it out. Place aside for now.
Take a piece of cardstock and cut a 9-1/2 X 3/4" piece. Cut two 1" diameter circles. Then using the mini decoration roller stamp images onto the long strip by holding it steady and rolling it onto the paper.
Note: If you have a die that precuts the rosettes, then use it to save time. Here is what it looks like using a die cut strip.
Take the second piece of cardstock and cut a 9-1/2" X 1" piece.
Cut two 1-1/2 " diameter circles.
Fold the 9-1/2" cardstock papers accordion style into 1/4" folds.
Take the two ends of the strip and glue together to secure them to create a circle.
Once the glue has dried, you will need to place the ring on solid surface and gently press the outer sides of the circle down.
Hold it and glue the 1-1/2" circles onto the front and back of the larger rosette to strengthen it. Follow the same procedure to create the smaller rosette.
Once the glue has dried on the rosettes, then glue the smaller rosette onto the larger rosette to stack them. Again, wait for the glue to dry.
Glue the toothpick to bottom side of the rosette.
Cut a 4" piece of wire. Using the round nose pliers, take one end to make a double loop.
To finish the rosette glue a charm to the double loop. Then glue the other end to the rosette.
Tags / Related Topics
Your Recently Viewed Projects
Images from other crafters
Love these projects? Get MORE delivered to your Inbox – FREE Click Here!
Report Inappropriate Comment
Are you sure you would like to report this comment? It will be flagged for our moderators to take action.
Thank you for taking the time to improve the content on our site.
What's Hot
- Pretty Pink Mason Jar Cups
- Camping Themed Birthday Cake Printables
- Cute as a Button Party Decor
- Neon Yarn Globes
- Owl Themed Party Decor
- Cardboard Tube Party Favor Pouches
- 20 Fantastic DIY Party Decorations
- 16 Graduation Party Decorations, Gifts, and Cards
- Toilet Paper Roll DIY Party Favors
- Circles of Fun DIY Photo Booth Decoration
Something worth saving?
- SAVE all your favorite crafts
- ADD personal notes
- QUICKLY reference your crafts
Free eBooks
- 14 Toilet Paper Roll Craft Ideas
- 23 Fabulous Picnic Craft Ideas + Restaurant Copycat Recipes
- 25 Easy to Make Homemade Jewelry Crafts
- Family Fun Crafts: 16 Craft Ideas for Kids
- Garden Crafts
- Graduation Crafts
- How To Make Tie Dye Shirts, Decor & More: 18 Tie Dye Patterns
- Learn How to Knit for Beginners: 27 Easy Knitting Patterns
- The Best Blogger Craft Ideas 2015: Home Decor Ideas, DIY Jewelry, Easy Crochet Patterns and More
Our Newest Projects & Articles
- Shooting Star Baby Blanket Crochet Pattern
- 12 Days of Christmas in July Giveaway
- Houndstooth Wallpaper Stencil
- Quilted Paper DIY Wall Art
- Sweet Decoupage Picture Frame
- Super Simple Painted DIY Wall Art
- Scrap Fabric Hair Accessories
- Metal Stamped Floral Stakes
- Easy Patriotic Rag Wreath
- Ultimate Plaid Home Decor Assortment

subset: commoncrawl


text:
No announcement yet.
AMD's Catalyst Legacy Linux Driver Updated To 13.1
new posts
Originally posted by GreatEmerald View PostHmm. Well, I never expected that kind of Spanish Inquisition... err, I mean, update for legacy fglrx. But yea, it doesn't seem to be that important, and in my case it's too late, as I just yesterday bought a new graphics card for my main pc, and the current one is doing well enough for HTPC use cases with r600g regardless.
FOSS driver works for TF2
Originally posted by d2kx View PostYeah I am hearing Team Fortress 2 is finally running for HD2000-4000 with this driver.
There is a new legacy (13.9) Catalyst available supporting Windows Vista and up [Radeon HD 2k-4k series].
However, I guess we won't see another legacy Catalyst for this generation on Linux.
How well is the recent FOSS driver performing on these ASICs compared to the latest legacy release?
Rather well for anything i tested. What's the point of sticking to the old fglrx cruft ?
By using xvba ? Now, where even xbmc removed code for the flawed xvba from mainline code, which software does really support xvba in a meaningful and useful way ?
AFAIK mplayer supports va-api, and by using vaapi-xvba wrapper it is possible to use some acceleration. That wrapper is functionality limited and flawed, also out of maintenance for some years, so i don't think it is of much worth.
Originally posted by petlab View PostI tried playing TF2 with the 12.6 driver. However, I got tired of applying workarounds and patches, so it never played for me. Then I went back to the opensource drivers, and I can play it pretty well with my HD 4290. It is only at 640x480 mind you, and with lowest settings. But it plays fine!
No problem with TF2, Portal 1, Half-Life 2 (can play on med-high!), Amnesia TDD, even Amnesia AMFP is playable.
I highly doubt I could achieve it with the os radeon driver but I guess there will still be people claiming it's 'in excellent state' just because it won't turn my laptop into a ball of fire.
A while back, I bought a small Acer netbook - specifically to play HD videos over the HDMI port. And it did, courtesy of MPlayer-vaapi. I'd only had the thing for a couple of months, when AMD kindly announced they were stopping supporting it with immediate effect! The legacy driver (13.1) is a pile of steaming excrement that will only work with antique kernels and xorgs. Even then, it regularly causes my laptop to freeze solid when xorg tries to start. However, I have put up with it until today, when the most recent updates to my system (and yes, I did opt out of any xorg or kernel updates) broke it yet again!
The open-source drivers don't support HD video playback on this hardware, so I'm left with a useless lump of expensive plastic, thanks to AMDs support policy!
I should add that I've been an enthusiastic AMD customer since the days of the K6-2 processor, but I will NEVER AGAIN touch anything with AMD or Ati graphics inside. I cannot afford to have expensive equipment reduced to junk well inside its normal service life by such an unreliable vendor.
Ubuntu 12.04 kernel 3.11 & Legacy Driver 13.1 for HD4570
I have an old notebook with VGA HD 4570, Catalyst 13.1 is the latest driver support for this card.
This version of Catalyst required kernel 3.5 (or below) but at this time my notebook is running on Ubuntu 12.04 and using kernel 3.11
When I tried to install CCC 13.1, fglrx was crashed but catalyst still installed completely with bugs (windows flickering when move...)
Please help me fix this issue


text:
- フランス
- 06046
- ニース
- 1 Promenade des Anglais
- マップ
- 電話: (33)(4) 97 03 44 44
- お問い合せ
- お知らせ
- ホテルのサイトを表示
- 12:09 hrs
Rated 3.5 out of 5 by 382 reviewers.
Rated 5 out of 5 by sromano Amaazing Stay! This property was great! The property is obviously undergoing some needed renovations but in no way was that an inconvenience to our stay. We were greeted with chocolates in our corner suite overlooking the ocean. The staff was very friendly and extremely helpful. The location is very ideal. The only complaints were the gym needs some serious updating and (Cedric?) the restaurant server was rude but didn't ruin the trip. I would certainly stay again and recommend to anyone. May 19, 2015
Rated 5 out of 5 by supatight80 I actually enjoyed property and service was quite excellent First off, all the staffs here were so kind to me and always willing to assist. Even the manager of f&b personally gave me complimentary wine on my last night. And all my food he wanted to make it special! Upgraded to a more than adequate Jr. Suite (highest floor) directly facing the sea and was able to watch mardis gras from my balcony all day and night! The patio was quite big btw, with 2 lounges and a 4 seat table to invite guests and have some wine while watching the sun set. Anyways long story short, IME the staffs were friendly, willing to assist, and i had great Platinum recognition May 14, 2015
Rated 4 out of 5 by Prbkcb Vacation in nice There was TV problems, but response was quick. May 11, 2015
Rated 5 out of 5 by Carlos2222222 Amazing location and great hotel dont listen to naysayers! My wife and I have traveled a great deal and are loyal SPG platinum. . .so must admit after reading the internet reviews had some trepidation as there were some negative reviews regarding not honoring SPG status and service etc...well I am happy to report it was much ado about nothing! (My friend stayed at nearby hotel which is ranked in 20th place approx and it was a dump and the staff not helpful and he had a problem with some service related issues so I think this place isnt bad at all but rather great place to stay) The service and location were phenomenal .. . .to circumvent the lack of SPG recognition as I usually get upgrades complementary and I was staying in Nice for a conference with my wife I didnt want to leave anything to chance I used my SPG suite rewards and was pleasantly surprised that I got a Panoramic Junior Suite Sea View on highest floor/corner room room 926 (going rate I believe 603-1200 Euros a night)! The service also was impeccable and you can't beat the location on the famous Promenade des Anglais. Pros: Beautiful location/oceanfront. Great service especially at breakfast and check-in. When we called for something the staff was prompt and helpful! Breakfast included as SPG perk which had varied types of food to satisfy all types. The manager Pablo Bandala left us a nice letter upon arrival and we received plenty of SPG acknowledgement. The rooftop terrace is great place for drink and taking in ambiance. Cons: Yes the hotel and hallways are in need of renovation but not "run down " as others have stated (but you arent going to sleep in hallways) but our room was wonderful and beds comfortable and neatly appointed. The AC system needs to be renovated as it was confusing and you couldnt set a set temp so it was warmer than we wanted hence the complaints from other people Verdict: would stay here without reservations. April 26, 2015
Rated 4 out of 5 by POINTKOMA tHIS HOTEL HAS A GREAT SEA VIEW I WAS VERY HAPPY DURING MY STAY April 13, 2015
Rated 3 out of 5 by canuckle average room, average stay, not participating in Unlock Art program Overall, avg CS, small room that is not very functional, good dining area, does not have active Unlock Art museum partner! I had a 5 night stay recently at this hotel and while it is in a great location near the water. The hotel is situated near the old town, close to many restaurants and attractions within walking distance. The tram is about 10 min walk, while the Acropolis Congress is about 20 minutes away by foot. On entry, I was told I was upgraded (I am a Platinum member), but in truth, it was a room off the elevator entry (my least favourite place and something noted in my profile). The room itself is quite small, barely enough room to fit the bed and a small table and bench. The table was not at a good height for working (which was the purpose of my trip). The bed was two mattresses pushed together, but due to a crevice in the middle, you were apt to slip in during the middle of the night and wedge in there! Not comfortable at all! Also, the night tables were unusable as one had too much stuff on them (phone, sheets of LM notices....) and very few electrical plugs to accommodate electronics. The balcony was quite spacious, but I would have preferred more space in the room (the balcony was equivalent in size to the bedroom!) Breakfast/dining area is nice with a good assortment of food. Aside from the valet, these were the friendliest staff I encountered in the hotel. My other issue with this LM was that it participates in the Unlock Art program, but when I asked about entry to its museum partner, MAMAC, I was told they no longer were partnered and were waiting, so if I wanted to go, I would have to pay. The response was rather cold and if LM wishes to advertise this program, it should honour it, or remove it from the website and offerings! April 1, 2015
Rated 3 out of 5 by NikolayKspb I did expect a lot more Far from what I would normally expect. March 25, 2015
Rated 3 out of 5 by Styleguy ask for the top floor ask for the Ocean view suit on the top floor.. January 24, 2015


text:
October 26, 2011
Green European beach grass lends color to a view of the fabled Yaquina Bay Bridge on a gloomy October morning.
Stories this photo appears in:
Preening pelicans are aplenty, along with sunning sea lions, on the Oregon Coast
Editor's Note: Part one of a visit to the Oregon Coast appeared here last Wednesday.
When Darlene, Nora the Schnauzer and I sat in the pickup, high above Newport's Yaquina Head Outstanding Natural Area tide pools, dozens of brown pelicans sailed overhead.
Use the comment form below to begin a discussion about this content.


text:
Low gas prices and rising household incomes mean lots of Americans will travel this holiday weekend.
... Read more
Thinking of buying a car? On July Fourth, buyers show their patriotism at dealerships. Read more
Dear Driving for Dollars, My friend was in a car accident that wasn't his fault, and the other person didn't have much insurance coverage. His car had a lot of damage, and he was banged up pretty badly. He had uninsured... Read more
The technology is real, but a self-driving car in every garage is still at least a decade away.Read more
Crash tests gauge how wreck-proof an auto is. These luxury cars earned high ratings.Read more
You have to try hard to make cars look this bad. Even BMW made our list of ghastly cars.Read more


text:
A method of compiling an application to reduce the occurrence of speculative exceptions is described. The method includes the steps of compiling the application to provide a speculation table and an executable file, and obtaining profile information about said compiled application using representative data sets. The compiler includes a scheduler unit for rearranging the order of the instructions in the application to provide optimal performance. The speculation table comprises a number of entries corresponding to the instructions of the application, each entry including a tag identifying the instruction and a semaphore indicating whether or not the instruction is likely to cause an exception. The executable file is run using a number of representative data sets to profile information identifying those instructions that result in exceptions, and the tag of the instruction is stored in a log file. After the profiling has completed, the tags of the instructions causing exceptions are used to set the semaphores in the speculation table corresponding to the tag. The application is then re-compiled. During the recompilation, those instructions with their semaphores set; i.e. those instructions causing exceptions, will not be speculatively scheduled by the compiler.
1. A method comprising the steps of:
compiling source code into an executable application comprising a plurality of instructions in an order of maximum speculation;
executing said executable application based on a plurality of data sets and storing exception characteristics of each instruction; and
recompiling said source code using said stored exception characteristics to determine a portion of said plurality of instructions which should not be speculatively scheduled.
2. The method according to claim 1, wherein the source code includes the plurality of instructions having a first order, and wherein said step of compiling comprises the step of providing the executable application having the plurality of instructions in a second order that is different than the first order, the second order having each non-branch instruction of the plurality of instructions moved before as many branch instructions as possible relative to the first order.
3. The method according to claim 1, wherein said step of recompiling further comprises the step of selecting instructions of said source code for reordering, said instructions selected for re-ordering responsive to said associated exception characteristics of said instruction.
4. The method according to claim 3, further comprising the step of providing a speculation table having an entry for each of said instructions, said entry for storing said exception characteristics of said instruction.
5. The method according to claim 4, wherein each entry of said speculation table further comprises a semaphore for indicating whether said instruction may be scheduled speculatively by said recompile step.
6. The method according to claim 5, wherein said semaphore is set during said profiling step responsive to said exception characteristics exceeding a threshold.
7. The method according to claim 4, wherein said source code further comprises a stream of instructions, and wherein the step of recompiling further comprises the step of optimizing said stream of instructions to provide improved performance of said executable application.
8. The method according to claim 7, wherein said optimizing step further comprises the steps of:
replicating one of said instructions; and
when replicating said one of said instructions, additionally replicating said exception characteristics corresponding to said one of said instructions.
9. The method according to claim 1, wherein the plurality of instructions includes a first set of initialization instructions that initializes variables used during execution of the executable application, and wherein the method further comprises the step of:
adding a second set of initialization instructions to said executable application,
said second set of initialization instructions initializing said variables used during execution of said executable application.
10. The method according to step 9, wherein said second set of initialization instructions initialize the variables in an attempt to cause exceptions during execution of said executable application.
11. The method of claim 1, wherein the step of executing and storing includes the step of generating an exception log for each of the plurality of data sets, and wherein the method further comprises the step of:
merging the exception log for each of the plurality of data sets to form a merged log having aggregate exception counts for each of the plurality of instructions of the executable application.
12. The method of claim 11, further comprising the step of:
comparing the aggregate exception counts of the merged log to a predetermined threshold to identify instructions of the source code for non-speculative scheduling.
13. The method of claim 12, wherein the step of recompiling includes the step of:
speculatively scheduling an instruction that causes an exception when an aggregate exception count associated with that instruction is less than the predetermined threshold.
14. The method of claim 1, wherein a first instruction precedes a second instruction in program order within the source code, wherein the first instruction initializes a particular variable and the second instruction uses the particular variable, and wherein the step of compiling includes the step of:
ordering the second instruction ahead of the first instruction within the executable application.
15. An apparatus comprising:
a memory that stores source code;
a processor coupled to said memory;
a compiler program, stored in said memory, for compiling the source code into an executable application when the compiler program is executed by the processor, said compiler program including:
a translation unit for translating the source code stored in said memory into a translated program comprising a stream of instructions;
an optimization unit for optimizing said translated program to provide enhanced performance of said processor;
a scheduler unit for rearranging said stream of instructions in an order of maximum speculation upon an initial compile of the source code; and
means for providing a speculation table, said speculation table comprising a plurality of entries corresponding to said stream of instructions, each entry for storing exception characteristics of said associated instruction, said exception characteristics used by said compiler program to determine a portion of said stream of instructions which should not be speculatively scheduled upon retranslation of said stream of instructions.
16. The apparatus of claim 15 wherein said compiler program further comprises:
means, responsive to said speculation table, for providing a recompiled application for execution on said processor.
17. The apparatus of claim 16, further comprising:
means for generating a log file, stored in memory, for storing profile information incurred by executing said executable application using a variety of data sets, wherein said log file includes a plurality of program counters of instructions in said executable application and a count associated with each of said program counters, said count indicating the number of exceptions incurred during execution of said executable application using said data sets.
18. The apparatus of claim 17, further comprising:
means for cross-referencing said program counters in said log file against a tag of each of said instructions; and
means for updating said exception characteristics of each instruction of said speculation table responsive to said cross-referencing means and responsive to said log file.
19. The apparatus of claim 15, wherein the stream of instructions includes a first set of initialization instructions that initializes variables used during execution of the executable application, and wherein said compiler further comprises:
initialization means for adding a second set of initialization instructions to said executable application said second set of initialization instructions initializing said variables used during execution of said executable application.
20. The apparatus of claim 19, wherein said second set of initialization instructions initialize the variables in an attempt to cause exceptions during execution of said executable application.
21. The apparatus of claim 15, further comprising:
exception log generation code that, when executed by the processor, generates an exception log for each of the plurality of data sets; and
merge code that, when executed by the processor, merges the exception log for each of the plurality of data sets to form a merged log having aggregate exception counts for each of the plurality of instructions of the executable application.
22. The apparatus of claim 21, further comprising:
compare code that, when executed by the processor, compares the aggregate exception counts of the merged log to a predetermined threshold to identify instructions of the source code for non-speculative scheduling.
23. The apparatus of claim 22, wherein, during a recompile of the source code, the compiler is adapted to speculatively schedule an instruction that causes an exception when an aggregate exception count associated with that instruction is less than the predetermined threshold.
24. The apparatus of claim 15, wherein a first instruction precedes a second instruction in program order within the source code, wherein the first instruction initializes a particular variable and the second instruction uses the particular variable, and wherein the compiler is adapted to order the second instruction ahead of the first instruction within the executable application during an initial compile of the source code.
25. The apparatus of claim 15 wherein said scheduler unit further comprises:
means for rearranging said instructions such that all of said instructions are moved before preceding branches.
26. The apparatus of claim 15 wherein said scheduler unit further comprises:
means for precluding rearrangement of instructions having undesirable exception characteristics.
This invention relates generally to the field of computer system software and more specifically to the field of compilers.
As it is known in the art, software applications that are executed on a computer system are written in a high level computer language such as FORTRAN or "C". Before the application can be executed by the computer system, it must first be translated from the high level language down to a machine executable instruction stream. A software program known as a "compiler" uses input data about the type of computer system and the type of high level language in order to translate the application into machine code capable of being executed by the computer system.
The computer system is typically comprised of a number of functional units including a decode unit, an execution unit, and a memory unit. Each machine code instruction is decoded by the decode unit to determine the type of operation to be performed by the instruction. The instructions which are capable of being decoded and executed by the computer system are known as the instruction set of the computer. Typical instructions on a Reduced Instruction Set Computer (RISC) include a LOAD instruction and a STORE instruction.
In early computer systems, each instruction in a sequence was decoded and the associated function was performed before the decode of the following instruction in the sequence. Such an arrangement ensured that each operation was complete before the start of the next and that therefore any data dependencies between instructions were always satisfied before the instruction was decoded. A drawback of this arrangement was that only one unit of the computer system was functioning at any given time interval, while the other portions remained idle. Accordingly, because the computer system was not being fully utilized, the performance of the computer system was greatly reduced.
"Pipelined" architecture was developed in an effort to maximize the utilization of the computer system. In pipelined computer systems, after one instruction in the sequence was decoded by the decode unit and passed to the execution unit, the decode unit immediately began decoding the next instruction in the sequence. With such an arrangement the decode unit, the execution unit and the memory unit could all be operating on different instructions during any given time interval.
However, pipelined architectures still must honor dependencies between instructions in a sequence. For example, if one instruction in a sequence was to LOAD R1, (R2) (which acts to load a register R1 with the contents of memory at an address designated by R2) a memory read must be performed.
If the next instruction in the sequence is ADD R1, R5 (which acts to add the contents of the two registers), the ADD instruction can not be performed until the read of memory has been completed. As a result the computer system typically stalled the execution of instructions until the dependencies between successive instructions were resolved, again reducing the overall performance of the system.
In an effort to combat the performance reduction caused by stalls, the concept of rescheduling instructions arose. Rescheduling instructions involves reordering the sequence of instructions to place one or more other instructions in the sequence between instructions having dependencies that may result in a stall. With such an arrangement, functional work may be performed in instances where previously the machine was idle and thus the performance of the computer system is improved.
Compilers that reschedule instructions typically divide the instruction sequence into groups of instructions called basic blocks. A basic block is a group of instructions having only one entry point and one exit point. All instructions in the basic block are executed before exiting from the block. Therefore, instructions in the block may be rescheduled to any location in the block to alleviate stall situations caused by dependencies between instructions in the block as long as dependencies between instructions are obeyed.
However, for computer systems capable of executing a number of instructions at a time, short basic blocks of code do not provide a sufficient number of instructions for optimal rescheduling. In order to make additional instructions available for rescheduling, an approach known as "speculative scheduling" has been developed. According to the concept of speculative scheduling, instructions following a conditional branch instruction (and thus in a different basic block) may be rescheduled to precede the branch instruction. This rescheduled instruction is referred to as a "speculative instruction." After rescheduling, the speculative instruction is situated such that it will be executed before it is determined whether or not the branch is taken, and consequently before it is determined whether or not that speculative instruction need be executed at all. If it is determined that the speculatively executed instruction did not need to be executed, the instruction is said to be "mispredicted" and its result is ignored.
One problem that occurs with speculative scheduling arises from speculatively executed instructions which cause exceptions. An exception is raised when an error is detected by the computer system, such as a reference to an invalid address. Exceptions result in an interruption of the normal processing of the instruction sequence so that the error can be repaired and the instruction causing the error replayed before processing of the instruction sequence is resumed. If a speculatively executed instruction is mispredicted, and generates an exception, then a great deal of compute time is wasted handling an exception that would not have occurred had the speculative instruction been left in its original basic block.
Both hardware and software techniques have been developed to handle speculative exceptions. One hardware technique, described in U.S. Pat. No. 5,421,022, determines that there has been an exception condition caused by a speculative instruction, but withholds the signaling of an exception to the computer system until it is determined that the speculative instruction is in fact executed.
Software techniques typically do not have the capability to defer exceptions as done in hardware. However, one software method, described in U.S. patent application Ser. No. 08/270,192, filed Jul. 1, 1994 and entitled "A Software Mechanism for Accurately Handling Exceptions Generated by Instructions Scheduled Speculatively due to Branch Elimination" defers exceptions in the following manner: Using a technique called "hardware predication", branch instructions were eliminated by applying the condition evaluated by the branch as a predicate to each instruction controlled by the branch. Each instruction controlled by the branch was encoded with the location of the instruction's associated predicate. In addition, each instruction included a semaphore for indicating whether an exception occurred during the execution of the speculative instruction. The exception handler, before executing the code to correct the exception, first checked the predicate and the semaphore of the speculative instruction. If it was determined that the speculative instruction should not have been executed, the exception handler did not proceed with the exception routine.
Thus both hardware and software techniques have been provided for correcting problems associated with speculative exceptions. However, each technique brings with it an associated overhead. The hardware technique utilizes chip area for control and pipelining of data. The software technique requires compute cycles for determining whether the exception handler need, in fact be executed, thus reducing the performance of the computer system. It is desirable to reduce the number of speculative exceptions to thereby minimize the overhead incurred by the software and hardware exception handling techniques.
According to one aspect of the invention, a method for providing an executable program includes the steps of compiling an application, the application having a stream of instructions, and executing the compiled application with a representative data set to provide profile information about the application. During the initial compilation, a translation table is generated, where the translation table includes an entry for each instruction. Each entry of the translation table identifies locations of the corresponding instruction in a memory. During execution of the compiled application with the representative data sets, instructions causing exceptions are identified, and the translation table is updated to indicate which of the individual instructions caused exceptions during execution. The profile data stored in the translation table is then used to guide the compiler during recompilation of the application to allow the compiler to make educated decisions about how to reduce the number of speculative exceptions which occur during the execution of the application. With such an arrangement, instructions likely to cause exceptions can be identified and precluded from being speculatively scheduled, thereby reducing the probability of `mispredicted` exceptions.
The above-mentioned and other features of the invention will now become more apparent by reference to the following description taken in connection with the accompanying drawings in which:
FIG. 1 is a flow diagram illustrating the functional blocks and interrelation between the blocks of a compiler designed in accordance with the present invention;
FIG. 2A illustrates a typical entry in a translation table of FIG. 1;
FIG. 2B illustrates a typical entry in a speculation table of the compiler of FIG. 1;
FIGS. 3A-3C illustrate rescheduling of a sequence of instructions performed by the compiler of FIG. 1; and
FIG. 4 is a flow diagram illustrating the execution process of the compiler of FIG. 1.
Referring now to FIG. 1, a portion of a computer system 10 according to the invention is shown to include a Central Processor Unit (CPU) 22 coupled to a memory unit 14. The CPU 22 is a processor that operates on a stream of instructions stored in memory 14. Each CPU typically includes decode logic, for determining a type of instruction, and arithmetic logic, for performing the functions dictated by the instructions. Associated with the CPU is an instruction set comprising a fixed number of instructions that are recognized by the respective CPU.
The memory unit 14 is typically comprised of dynamic RAM devices. The memory unit 14 is used for temporary storage of instructions and data for use by the CPU. In FIG. 1, the memory is shown to hold two programs indicated by dashed outlines; a compiler 16 and an application program 18. The application program is a program to be executed by the CPU, such as a graphics program, a simulation tool, a word processing program, a game or the like. Typical application programs are written in a high level language such as C, FORTRAN, or COBOL. Application programs must be translated into code that is recognizable by the decode logic of the CPU 22. Therefore the compiler requires, as input, the application program and the instruction set of the CPU. The compiler may also require other information about the CPU such as branch latencies, memory read latencies, or the number of working registers.
The compiler 16 operates on an input application program 18 to provide an executable file 25 for execution on the CPU 22. In addition, during compilation a speculation table 19 is output from the compiler 16. The speculation table 19 is further updated with data from a PC LOG file 23 that is generated by the CPU using data sets 21. The speculation table 19 and PC LOG 23 each aid in identifying instructions that may cause exceptions, and will be described in more detail later herein. The speculation table 19 is read by the compiler 16 during a second, recompilation of the application. In order to fully explain the data stored in the speculation table, a brief overview of the operation of the compiler 16 is provided below.
The compiler of FIG. 1 is shown to include 3 functional units: a translator 16a, an optimizer unit 16b and a scheduler unit 16c. The translator 16a uses information about the instruction set of the CPU to translate the application from a high level language representation into an instruction stream executable by the CPU. The translator 16a uses a parsing program, known to those of skill in the art, to read the application, and a translation mechanism to convert the recognized characters into instructions from the instruction set, thus creating an internal representation of the application program. The internal representation is stored in memory, and a tag is generated for each instruction to indicate the location of the corresponding instruction in the source program.
Although the translator is able to provide an executable instruction stream, there is no guarantee that this translated instruction stream will be able to take full advantage of the performance of the CPU. Because applications are written in a high level language, they are not designed for the particular characteristics of the CPU on which the application will be executed. Thus certain optimizations must be made to the translated instruction stream in order to improve the performance of the application on the particular CPU. Typical optimizations include loop unrolling and other methods known to those of skill in the art which need not be detailed herein. These optimizations are performed by optimizer 16b. After the optimization have been implemented, the internal representation of the application is fed to the scheduler unit 16c.
The scheduler unit 16c operates to reduce the amount of time that any portion of the CPU logic remains idle. As mentioned previously, in a pipelined architecture the functional operations of the CPU are broken down into a number of discrete operations. By way of a simplistic example, these operations may include a decode unit, an execution unit, and a memory unit. Each unit has a task associated therewith; the decode unit decodes the instruction stream, feeding variables and control to the execution unit. The execution unit may perform arithmetic functions, and may be used to calculate memory addresses. The memory unit stores and retrieves data. Associated with memory is a latency, i.e. a portion of time between when a memory request is initiated and when the data may be retrieved from the memory. If an instruction requires data from the memory unit, the entire CPU may be stalled until that data is returned. Because the CPU is not operating during a stall, it can be seen that stalls are detrimental to CPU performance.
However, not every instruction requires the use of all the functional units. Other instructions which do not require data from the memory unit may be executed while the memory unit is accommodating a request. The scheduler unit 16c rearranges the order of the instruction stream to insert other instructions before an instruction requiring memory data from a previous operation, in order to minimize the stalls. By ensuring that most of the functional units are operating at any given time interval, improved computer performance may be achieved.
For example, an instruction sequence that may result in a stall is shown below. Note that instruction 2 requires memory read data from instruction 1, and therefore is dependent upon instruction 1.
1. ID R0, (r1)
2. beq r0, L1
3. ID r2, (r3)
4. ID r4, (r5)
Without scheduling the above code sequence, it would flow in a sequence such as that shown as group 24 in FIG. 3A. The first instruction loads a register with the contents of a memory location designated by r1. As such, the first instruction requires a memory read to be performed. The second instruction branches, depending upon a comparison between L1 and the data returned by the read operation. As such, before the branch can be performed, the CPU must wait for the memory read to occur. Even in systems that use cached memory, a latency is incurred that results in a stall which reduces the performance of the system.
Re-scheduling of the instruction sequence may reduce the number of stalls in the computer system. Referring again to the example instruction stream shown above, by examining instructions 3 and 4 it can be seen that neither instruction requires the read data of instruction 1. The scheduler recognizes both the dependence of instruction 2 on instruction 1 and the independence of instruction 3 and rearranges the instructions as shown in FIG. 3B as group 26. The resulting instruction stream will execute instruction 3 before the branch instruction 2. Because instructions 3 has been moved before the branch instruction, it will be executed `speculatively.`
A branch instruction may divert the flow of the instruction sequence if taken. Thus, moving an instruction succeeding a branch to a location preceding the branch results in the execution of an instruction that may not, in fact, need to have been executed. Thus, instructions moved from after a `branch` instruction, or any instruction which conditionally changes the flow of instruction sequence, to before the decision point is referred to as a `speculative` instruction. If, in fact, the branch is taken, and the flow of instructions is diverted, then the `speculative` instruction is said to be `mispredicted`.
The modifications made by mispredicted instructions may be ignored. However, sometimes a mispredicted instruction may trigger an exception. An exception may occur for many reasons; perhaps due to an overflow, underflow, or an operation on invalid data. In addition, many other types of errors may result in exceptions, though an entire listing of these events need not be described herein. Suffice it to say that when an exception occurs, the execution of the stream of instructions must be stopped and the exception condition corrected. Following correction of the instruction, the instruction stream may either be backed up to the instruction causing the exception, or redirected to a new instruction flow.
The above corrective measures are taken each time an exception occurs. However, if instructions are speculatively scheduled, and later found to be mispredicted, then the extensive exception correction measure outlined above need not have been taken. As a result, compute cycles are wasted on unnecessary operations and the performance of the application may be reduced instead of improved by speculative scheduling.
We perform a profiling pass in order to determine which instructions, when scheduled speculatively, cause exceptions. The scheduling algorithm for profiling is carefully chosen to expose as many exceptions as possible. This algorithm is different from the one a compiler would choose to maximize performance. For example, referring again to the above code sequence, assuming that the load information in instruction 1 is not available for 1 cycle, a 1 cycle stall would result between the execution of instructions 1 and 2. As shown, if the order of the code were rescheduled, instruction 3 could be moved above instruction 2 to fill the stall cycle. Execution of this rearranged code sequence may result in an exception caused by instruction 3. If instruction 3 causes an exception, the code could be recompiled, to force instruction 3 to follow the branch of instruction 2.
Because there is still a stall cycle to fill, on the second compilation pass, when instruction 3 is precluded from scheduling, the scheduler may move instruction 4 before the branch instruction 2. However, it may be that instruction 4 also causes an exception during execution. Therefore, a profiling run must be performed again before the new instruction scheduling is selected as the optimum scheduling. Thus it can be seen that an iterative process of scheduling, profiling, re-scheduling and re-profiling will be performed before the optimum scheduling is determined. This iterative process is time consuming and results in an undesirably long compilation period.
Thus it can be seen that it would be desirable to find all exception causing instructions in a single profiling execution of the compiled application. The present invention achieves this objective by performing the initial compile of the application using a `maximum speculation` mode. Using maximum speculation, every instruction is forced to be speculatively executed. That is, every instruction is moved before as many preceding branches in the code sequence as possible. As a result, the maximum :number of instructions that may cause exceptions may be detected during one sample run of the application using the re-arranged code sequence. The exception characteristics of the instructions may then be fed: back for one, second pass, recompile to provide an optimally scheduled instruction sequence.
For example, referring now to FIG. 3C, an example of the code sequence above being rearranged for maximum speculation is shown as instruction sequence 28. Note that in this sequence, both instructions 3 and 4 have been moved before the branch instruction 2. Thus, by performing a sample run of the application in this rearranged code sequence, it can be detected whether both instructions 3 and 4 are likely to cause exceptions if they are speculatively scheduled.
Once the instructions likely to cause exceptions have been detected, the method, according to this invention, reduces the occurrence of speculative exceptions by identifying those instructions most likely to cause exceptions, and precluding the re-scheduling of those instructions. Referring again to FIG. 1, upon completion of the initial compilation process, the compiler 16 outputs an executable file 25, representing the optimized application in scheduled, instruction set format. In addition, the compiler outputs a translation table 20. The translation table 20 includes an entry for each instruction. An example of a translation table entry 30 is shown in FIG. 2A to include a program counter 31 and a tag 32. As mentioned previously, the program counter indicates the location, in memory of the instruction in the executable program. The tag is a pointer to where the instruction ended up in the internal representation of the compiled program. Alternatively, the tag could be the location of the instruction in the source code.
When the application is compiled, the application program first output from the compiler 16 has many speculative instructions. Some of these speculative instructions will always cause exceptions due to the order of instructions in the new, rearranged instruction sequence.
To determine which instructions will cause exceptions, the method according to this invention executes the application program using a number of representative data sets 21 to provide profile information about the application. The data sets are designed such that execution using these data sets will identify exceptions. The data sets should be representative of the way the application program is used and are generally selected by the application programmer.
During the profiling phase, the program counters of each of the instructions that cause exceptions are recorded in a PC log file 23, and a count of the exceptions associated with each program counter is maintained. The PC log file 23 is actually a data structure stored in memory, where each entry of the data structure includes a program counter and a count. Each time an exception occurs, the PC log file 23 is searched for the appropriate program counter, and the counter corresponding to the program counter is updated. A hash table is maintained to locate the appropriate program counter in the PC log file, although other methods, known to those of skill in the art, may also be used. A separate PC log is generated for each data set. When all the representative data sets have been executed, the PC logs for each data set are merged to provide one large data structure PC Log 23 including the program counters that caused the exceptions during the profiling run, and the corresponding number of exceptions caused by each PC.
After the PC logs have been merged, the speculation table 19 is then addressed using the program counters in the PC Log 23 to cross reference the translation table 20 to provide the appropriate instruction tags. The number of exceptions caused by each instruction in the profiling run are stored in the speculation table with the corresponding instruction tag An example entry in the speculation table is shown in FIG. 2B to include a TAG field 34 an Exception Count 35, and Speculation Semaphore 36.
The Exception count 35 is used to set the Speculation Semaphore as follows. The Exception count 35 is examined to determine whether that instruction cause a sufficient number of exceptions to cause it to be precluded from scheduling. In determining which instructions are `ideal` candidates for speculative scheduling, a tradeoff is made between the number of cycles required for the exception handler, and the number of cycles saved by speculative execution of the instruction. For example, if a program were to run for a long time and an instruction that is frequently executed only caused a few exceptions, it might still be worthwhile to schedule the instruction speculatively even if the exception handler uses a large number of cycles. For example, if scheduling an instruction speculatively helped you save 100,000 cycles, but the speculative exceptions cost you 10,000 cycles (2 exceptions at 5000 cycles each), then speculation for that instruction might be worthwhile.
Accordingly, because the present invention uses maximum speculation to force all of the instructions to be executed speculatively, the ideal and non-ideal candidates for speculative scheduling may be identified with only one pass of the compiler. As a result, the optimal solution, in terms of which instructions are rescheduled and which are not, may be provided with a minimum amount of excess compilation compute time.
The method used by the present invention to determine which instructions are `ideal` is by comparing the exception count against a threshold value. A threshold number indicates the number of exceptions which are allowable for each instruction. If the threshold number is exceeded, speculative scheduling of the associated instruction is precluded by setting the associated Speculation Semaphore to a `1`. Note that overstepping the threshold value does not preclude any scheduling of the corresponding instruction, it simply precludes speculative scheduling.
During the second pass of the compiler, each of the instructions with the Speculative Semaphore 36 set will not be speculatively scheduled by the scheduler 16b, and accordingly an executable program is provided that has a reduced risk of speculative exceptions.
It should be noted that, although the above sequence describes separate translation tables, speculation tables, semaphores and PC logs, that all of the tables and/or logs are data structures which may be stored in any configuration in memory and the present invention is not meant to be limited to this configuration. For example, one data structure may be maintained that includes all of the above listed information, or separate data structures may be maintained for each. The selection of which arrangement is to be used is largely a design choice.
While maximum speculation alleviates the problems associated with `mispredicted` exceptions resulting from instruction sequence, exceptions may also result when a re-scheduled instruction is executed before its associated data is initialized. For example a problem may arise if scheduling affects the initialization of variables in a sequence of code. The effects of this problem can be shown through the use of the following code sequence:
1. if (float)
2. f=1.0;
3. else
5. if (float)
6. f=-f;
In a program that has not been rearranged by speculation, the variable `f` is always initialized before the negate operation in instruction 6. However, if the scheduler moves instruction 6 before the initial test is performed by instruction 5, then variable `f` may be uninitialized when the negate operation is executed.
To overcome this problem, during the profiling portion of the initial compilation, each variable is initialized to a special, known value through the use of an initialization code segment appended to the start of every function. The initialization value is selected such that it will always generate an exception if it is used in an operation that may raise an exception. The selection of the value is machine dependent. For example, because the present invention was developed to work in an Alpha™ system, a value used for initialization was a `1`, because `1` is an unaligned address and a denormalized floating point value, both of which cause exceptions in an Alpha™ computer.
In addition, the optimization process, which frequently copies instructions, may generate an instruction sequence likely to cause exceptions. For example, while obtaining profile data for the application, one of the copies of the instruction may cause a greater number of exceptions than the other copies, and that copy will be flagged for non-speculative scheduling. During the second compilation process, those instructions having incurred the exceptions will not be speculatively scheduled, but other copies of the instructions may still be scheduled during the optimization phase of the second compilation process if they incurred less than the allowable threshold of exceptions. The copies, being exact replicas of the instruction causing the exceptions will likely cause a similar amount of exceptions even though they did not incur the threshold amount of exceptions during the initial profiling run.
Speculative scheduling of copies of non-speculatively scheduled instructions is precluded during the second compilation process as follows. During the translation process of the second compilation, the TAGS and program counters are encountered as during the first compilation process. During the optimization phase, whenever an instruction is copied, a corresponding speculation table entry is formed by copying the speculation table entry of the original instruction. As a result, the exception characteristics of the copied instructions will be identical to those of the original instruction. Therefore, during the scheduling process, all copies of an original instruction that is precluded from speculative scheduling will also be precluded from speculative scheduling.
Referring now to FIG. 4, a flow diagram illustrating the overall operation of the invention described above is shown. At step 40, the application program is compiled using the special compilation mode, where the highest number of instructions are executed speculatively. As instructions are translated they are assigned tags. After compilation is finished, and the program counters are known, a the translation table is updated similar to that shown below in TABLE 1:
TABLE 1______________________________________Translation Table Entries PC TAG______________________________________ 100 2 101 3 102 4______________________________________
At step 42, all of the variables are initialized to a known state which is sure to cause an exception if the variable is operated on without prior initialization. As mentioned previously, this initialization is performed by inserting a code segment onto the beginning of the application and at the beginning of each function during compilation. At step 43, the compiled application program is repeatedly executed using a variety of known data sets. During the execution, at step 44, it is determined whether each instruction has caused an exception. If, at step 44 it is determined that there is no exception, it is determined at step 46 if there are more instructions to be executed. If, at step 44 there is an exception, at step 50 the entry in the PC LOG associated with the program counter of the instruction causing the exception is incremented. It is then determined at step 46 if there are any more instructions in the sequence. If there are more instructions, the process continues to test for exceptions and increment counters in the PC LOG file as appropriate.
If, at step 46, it is determined that there are no more instructions, it is determined at step 56 if there are any more data sets to test. If there are more data sets, the above described process is repeated until the entire test set is exhausted. Once the application has been tested using all of the data sets, at step 57 the PC Logs are merged. The result is a PC Log such as that shown below in TABLE 2.
TABLE 2______________________________________PC LogPC # OF EXCEPTIONS______________________________________102 30______________________________________
At step 58, the PC log (Table 2) is used in conjunction with the tag table (Table 1) to generate a speculation table (Table 3), by cross-referencing the PC's in the PC log with the TAGs in the tag table. The speculation table includes information about the TAG of the instruction and the exception characteristics of the instruction. At step 59, the exception characteristics are analyzed to determine whether or not they exceed some threshold value. This threshold is determined based upon the number of cycles required for an exception handler versus the number of cycles saved by the speculative scheduling of the instruction. A threshold value of 1 was used in the preferred embodiment of the invention, although other values could be used for systems capable of providing exception handling with a minimum number of cycles. As a result, a semaphore associated with the instruction is set to indicate whether or not the instruction should be speculatively scheduled. Table 3 illustrates a sample Speculation Table entry including the semaphore.
TABLE 3______________________________________Speculation Table Tag and speculation semaphoreTAG Exception Count Semaphore______________________________________2 03 04 30 non-speculative5 0______________________________________
After the semaphores for each instruction have been determined, at step 60 the second compilation process begins. During the optimization phase of the second compilation, any instructions that are copied from an original instruction will also have a speculation table entry created by copying the speculation table entry of the original instruction. The scheduler schedules the instruction sequence such that those instructions likely to cause speculative execeptions are not executed speculatively. Upon completion of execution by the scheduler, an application is provided that may use the resources of the associated computer system more efficiently.
Thus a method has been provided that reduces the problem of exceptions caused by mispredicted speculative instructions. The method ensures that exceptions caused both by uninitialized data and exceptions caused by instruction sequence are detected and eliminated from the application.
Having described the preferred embodiments of the invention, it will now become apparent to those of ordinary skill in the art that other embodiments incorporating its concepts may be provided. It is felt therefore that this invention should not be limited to the disclosed embodiments, but rather should be limited only by the spirit and scope of the claims.
Patent Citations
Non-Patent Citations
Referenced by
Legal Events
Original Image


text:
Top Definition
meaning "no way" or "ha, not" or "joke"
"Are you going to the game Friday?"
"Jola! I've got better things to do."
"Jola! I've got better things to do."
ayon kay bukina ika-09 ng Setyembre, 2006
2 more definitions
white female, used as needed, often seen with random black men
yo, where da jola at?
ayon kay Nick_H ika-06 ng Agosto, 2003


text:
Carphone to offer BlackBerry Curve 8900 in titanium from 16 Dec
The Carphone Warehouse has announced it will offer a titanium-coloured BlackBerry Curve 8900 exclusively from Tuesday 16 December, from free on a £35 a month contract with O2 or handset only for £399.99.
The phone debuts in the UK today from T-Mobile who will offer the device free to those who sign up to a £35 contract which gives users unlimited push email and web browsing.
Vodafone has told Pocket-lint they should be getting the device in time for Christmas, but has not confirmed details.
O2 had previously announced that the 8900 will be available to customers from 5 January 2009 from free up to £234 depending on tariffs.


text:
Heisey ran circles around that flyball.
Heisey ran circles around that flyball.
"This isnt stats vs scouts - this is stats and scouts working together, building an organization that blends the best of both worlds. This is the blueprint for how a baseball organization should be run. And, whether the baseball men of the 20th century like it or not, this is where baseball is going."---Dave Cameron, U.S.S. Mariner
Glad Ludwick did something, the Reds need to find somebody in the LF/CF mix who can hit the ball. Maybe it will be Ryan.
9 pitch inning by Leake.
Hanigan groundout to third. One out.
chat is open
"panic" only comes from having real expectations
Mike Leake groundout to Ian Desmond. He was first pitch swinging.
Hanigan struggling. After a 30 pitch inning, our opposition looks th have less than 10 in this inning
"You only have to bat a thousand in two things; flying and heart transplants. Everything else you can go 4-for-5."
-Beano Cook
Phillips groundout to Ian Desmond. Three outs. Very quick inning for Detwiler.
6 pitches? We're back to normal.
"You only have to bat a thousand in two things; flying and heart transplants. Everything else you can go 4-for-5."
-Beano Cook
And the Reds are back to form in 2nd inning.
Most Vottomatic Player
Laroche groundout to Phillips. One out.
Seeing a lot of pitches, or not, seems like it's usually a function of fouling off pitches. Otherwise, if you're determined to see a lot of pitches, you might only see three.
Werth draws a walk. Runner on first with one out.
Derosa grounds into a double play. Leake-Phillips-Votto. 3 outs.
Board Moderators may, at their discretion and judgment, delete and/or edit any messages that violate any of the following guidelines: 1. Explicit references to alleged illegal or unlawful acts. 2. Graphic sexual descriptions. 3. Racial or ethnic slurs. 4. Use of edgy language (including masked profanity). 5. Direct personal attacks, flames, fights, trolling, baiting, name-calling, general nuisance, excessive player criticism or anything along those lines. 6. Posting spam. 7. Each person may have only one user account. It is fine to be critical here - that's what this board is for. But let's not beat a subject or a player to death, please.


text:
Originally written on isportsweb.com | Last updated 6/25/13
Good news for Washington Nationals fans everywhere, Bryce Harper is starting his comeback. Starting Tuesday, Harper will begin rehab at Class A Potomac. This is early even in Harper's opinion. Before the Rockies game on Saturday Harper believed he wouldn't be ready until at least Wednesday or Thursday. After a positive practice Monday at Nationals Park, the Nats organization decided he could begin playing without worrying about further injury to his left knee. The outfielder was hitting line drives during batting practice and looked solid as he was running the bases. Harper has been sidelined since May 26th with bursitis in his knee after colliding with the scoreboard in Dodger Stadium. Harper said he wants to play at least six games in the minors to bring his swing back before returning. Nationals Manager Davey Johnson thinks it'll take fewer for Harper to get back to his original self. Harper is very excited to start in Potomac. Not only because he will be playing baseball again but he will be reunited with former teammates and former manager Brian Daubauch, his first professional manager. He could also go up against his brother Bryan, a left-handed reliever at Hagerstown. If everything goes well in Potomac, it is speculated Harper could be back in his 34 jersey in time for the weekend series with the New York Mets at Citi Field.
Comments are closed.
What do you think?To leave a comment, you can:
MLB News
Delivered to your inbox
You'll also receive Yardbarker's daily Top 10, featuring the best sports stories from around the web. Customize your newsletter to get articles on your favorite sports and teams. And the best part? It's free!
Follow us on Twitter
|Best of Yardbarker
|NFL News
|MLB News
Today's Best Stuff
For Bloggers
Join the Yardbarker Network for more promotion, traffic, and money.
Company Info
What is Yardbarker?
Yardbarker is the largest network of sports blogs and pro athlete blogs on the web. This site is the hub of the Yardbarker Network, where our editors and algorithms curate the best sports content from our network and beyond.
|© 2015 Yardbarker, Inc. All rights reserved. Use of this website (including any and all parts and components) constitutes your acceptance of these Terms of Use and Privacy Policy. (What's New?)


text:
Tree Stewards are trained community volunteers committed to promoting healthy urban and rural forests in Virginia. Tree Stewards provide training classes, educational programs, and projects in their communities intended to increase public awareness of the value of trees while teaching about trees and tree care. With classroom training and hands-on practice, Tree Stewards are equipped to identify trees, counsel on tree selection, demonstrate proper tree planting and follow-up care, and guide removal of invasive plants that threaten trees.
Tree Steward Training Manual
Individual Tree Steward Chapters have annual training programs for Tree Stewards. Click here for the Arlington, Charlottesville, Fairfax, Richmond, and Roanoke training classes. Contact other chapters for their training programs.
Trees Virginia Mini Grant Support to Tree Steward Groups
The Mini Grant Awards have been awarded for the 2014 cycle
The next Mini Grant application period will be in the fall of 2015
Trees Virginia offers mini grants to support Tree Steward groups. Tree Steward groups may apply for as much as $500 to assist their community work. Some projects receiving grants in the past included educational materials, tools and equipment, training support, and trees for planting. The 2014 deadline for application was December 1.
By June the following year, project expenses will be reimbursed as requested and a final report, including volunteer hours, will be submitted to Trees Virginia.
, who holds the Tree Steward seat on Trees Virginia Board of Directors and facilitates the subcommittee awarding the Mini Grants. Check out each of the five documents below for the complete 2014 Mini Grant Program package.
2014 Mini Grant Budget Worksheet
2014 Mini Grant Reporting Requirements
Tree Steward Groups in Virginia
Arlington/Alexandria Tree Stewards
Arlington/Alexandria Tree Steward Christina Campanella and her classmates at Arlington Independent Media created this effective public service video about the environmental damage caused by invasive English ivy.
Charlottesville Area Tree Stewards
Fairfax Tree Stewards
Front Royal/Warren County Tree Stewards
Contact: Sandy Wilson - 540-636-3067
Greater Lynchburg Tree Stewards
2014 Arbor Day Event in Lynchburg! The Greater Lynchburg Tree Stewards had never worked with this age group of children before. The Principal of Hutcherson Early Learning Center, Ms. Polly Smith, was so enthusiastic and was encouraged to make the day meaningful for the children. She even climbed right up on Mount Mulchmore with the children. It was a fun Arbor Day.
Harrisonburg Tree Stewards
Loudoun County Master Gardeners Tree Stewards*
*Must be Master Gardener in good standing
Peninsula Master Gardeners Tree Stewards*
*Must be Master Gardener in good standing
Richmond Tree Stewards
Contact: Louise Seals, President - 804.389.8798
The Richmond Tree Stewards have been featured on a PBS-sponsored television program, Virginia Home Grown. City Arborist and Trees Virginia member Luke McCall and Tree Steward Louise Seals explain the work that Richmond Tree Stewards do to prune and care for public trees in this 8-minute segment. Watch the video here.
Roanoke Tree Stewards
Contact: Helen Smythers -
Virginia Beach Master Gardeners Tree Stewards*
Contact: Sherry Kern -
*Must be Master Gardener in good standing


text:
Originally written on Pro Sports Daily | Last updated 12/31/12
After firing Norv Turner as their coach on Monday, the San Diego Chargers are interested in Indianapolis Colts offensive coordinator Bruce Arians as a possible replacement, according to the NFL Network. Fired coaches Andy Reid (Philadelphia Eagles) and Ken Whisenhunt (Arizona Cardinals) are also rumored candidates. Arians, who filled in for Chuck Pagano while he took a leave from the team because of his leukemia diagnosis, went 9-3. The Colts finished the season 10-6 and are headed to the playoffs. Pagano said he endorses Arians as a head coach. "Interest in Bruce Arians? If someone calls, he's earned any phone call, has earned that right," he told the Indianapolis Star. "We do not want to lose Bruce Arians." Pagano's brother, John, is the Chargers defensive coordinator.
Comments are closed.
What do you think?To leave a comment, you can:
NFL News
Delivered to your inbox
You'll also receive Yardbarker's daily Top 10, featuring the best sports stories from around the web. Customize your newsletter to get articles on your favorite sports and teams. And the best part? It's free!
Follow us on Twitter
|Best of Yardbarker
|NFL News
|MLB News
Today's Best Stuff
For Bloggers
Join the Yardbarker Network for more promotion, traffic, and money.
Company Info
What is Yardbarker?
Yardbarker is the largest network of sports blogs and pro athlete blogs on the web. This site is the hub of the Yardbarker Network, where our editors and algorithms curate the best sports content from our network and beyond.
|© 2015 Yardbarker, Inc. All rights reserved. Use of this website (including any and all parts and components) constitutes your acceptance of these Terms of Use and Privacy Policy. (What's New?)


text:
Audit user
Hi i need to know if there's a way to audit an user (System Manager Role), to view logs or something.
In all the logs in log section dont show the activity of the user, or if an user log in to the system, etc.
Comments 4 Comments • Jump to latest comment
I dont believe this is logged as it is assumed the overall system manager has been granted the rights to maintain the system.
If you would like this feature added click on the "IDEAS" under Archiving and eDiscovery and enter your request there. Our PM does monitor and track requests and review them for future releases
Have PW protected pst files (we do not collect them - we get them from external sources).
Is there a way to provide pw to the file within CW? Or, does the pw have to be applied outside CW and then just re-process the file?


text:
Image Unavailable
- Sorry, this item is not available in
- Image not available
- To view this video download Flash Player
|List Price:
|$13.10 & FREE Shipping on orders over $35. Details
|You Save:
|$2.40 (15%)
Product Details
Size: 5 Piece | Color: Fluted Square
Would you like to give feedback on images?
I purchased these for a ceramics class and they work great. I would buy them again in the future if I ever needed replacements.Published 15 hours ago by unKNOWN
Work well for cutting dough, making patties or stacked food presentations.Published 6 days ago by Betty from Chicago
The Ateco set comes with probably every size cutter you would ever need. My daughter who was a pastry chef has had this set for many years. Read morePublished 6 days ago by Mona Lisa
Great for cookies, biscuits, and even frying a perfectly round egg.Published 7 days ago by Tony Batt
I've only used these letters once and that was for last Thanksgiving. I made individual mini pumpkin pies for my grandchildren and using leftover pie crust I put their names on... Read morePublished 8 days ago by CV
Very sharp! Great for everything from doughnuts and holes to extra large cookies and biscuits.Published 8 days ago by Idaho
A quality collection of food cutters that come in a thorough variety of sizes. They can also be used as food molds, though it is not recommended. Read morePublished 11 days ago by Joshua Beck


text:
I'll probably be getting some St. Benardus (Is that how it is spelled?) soon.
Stuff is really good.
Printable View
I'll probably be getting some St. Benardus (Is that how it is spelled?) soon.
Stuff is really good.
Unfortunately its not out here in Cali. I miss it greatly.
I had one of these last night at dinner, enjoyed it quite a bit.
That Snow Cap stuff looks tasty. As for Yuengling, they sell it in Ohio, and I live right on the border and can go there and get cases whenever I want or go get it on draft at the bars. The stuff is really good. I don't know why they won't sell it in Indiana yet, and if I'm not mistaken it was not until recently that Ohio got it. Good stuff for a cheap price.
I was sippin' on some Sam Adams Winter Lager tonight. I know, nothing unheard of, and I know it is everywhere, but it was good. :)
After my Sam Adams tonight, I might get back into drinking darker and different beers, besides the usual, Bud Light, Coors Light/Domestics. So much for losing weight. :(
With the B-ball talk being kind of slow I was poking around the site and found this thread. Big craft beer fan and think Indy has a pretty decent local beer scene. Every time I come through I load up on Sun King Osiris, Flat 12 Pogues Run Porter and a few others. Also try to visit 20 Tap for a burger and some beers if I can squeeze it in.
Have a friend that lives in Lowell, IN and have had a great time hanging out at the Three Floyds tap room. This year we are planning a MI beer tour. Going to hit Bells, Founders and the Hop Cat among a few others.
Here is what is in the fridge now and should also be available to the Indy guys. Great beer if you like a big tropical IPA.
Attachment 683
It's really hard to beat the Tripel de Ripple from Brugge. Great flavor, high alcohol content.
Beck's Sapphire - lousy commercials during the Super Bowl. Pretty good beer.
Strangely enough, the bottle says both, "brewed under the German Purity Law of 1516" and "Product of USA."
Go figure.
Lately I've been sticking with authentic brews from the motherland - Radeberger's Pilsner and Warsteiner.
A friend of mine is a visiting brewmaster at Sun King (he is starting his own brewery in Cincinnati)
They have an event but it may be full:
enjoying a nice Anchor Summer Beer. Gotta love all the amount of breweries in Northern California :D
Anyone try anything from Triton Brewing Company? They have some at the liquor stores in Plainfield. I've been hooked on "Fieldhouse Wheat".
Their beer tastes sooo good. Figured some Pacer fans might like the design thats what made me want to try it.


text:
Thanks for redeeming.{{else}}
Success! Thanks for repurchasing.{{/if}} {{else}} {{#if Expired}}
Increase my visibility!{{else}} {{#if IsMultiPack}}
{{#if HasMultiPack}} You have {{MultiPackCount}} top spot(s) left. Now loading you into the search listings... {{else}} You have used all top spots. Now loading you into the search listings... {{/if}}{{else}}
We are loading you into the search listing pages...{{/if}} {{/if}} {{/if}} {{/if}}
{{Current}} just saw you!{{/if}} {{#if LastTopSpotPurchaseIsMulti }} {{#if HasAnyTopSpot}}
{{#if HasFreeTopSpot }} {{ UnclaimedTopSpotFree }} Free {{/if}} {{#if HasPaidTopSpot }} {{#if HasFreeTopSpot }} & {{/if}} {{ MultiPackCount }} {{/if}} Top Spot{{#if Plural}}s{{/if}} Left{{else}}
0 Top Spot{{#if Plural}}s{{/if}} Left{{/if}} {{else}} {{#if HasFreeTopSpot }}
{{ UnclaimedTopSpotFree }} Top Spot{{#if Plural}}s{{/if}} Left{{/if}} {{/if}} {{else}} {{#if HasResults}}
{{Current}} see you now!{{else}} {{/if}} {{/if}}
You can now invite anyone to meet at your favorite Starbucks.
Limited-time feature
38 year old woman | Fort Lauderdale, FL, USA | Seeking men 32-41 within 50 miles
Well traveled...check, educated...check, relationship...Looking! Please read my profile before sending any correspondence.
Where do I start? I am new to the whole online dating thing, not really sure how I feel about it yet but am willing to give it a try. I have been fortunate enough to have a great career and have been able to travel to amazing places to experience different cultures. Having lived in different places for work I think has helped shape me into a more well rounded person versus focusing so much on my career.My friends would describe me as extremely caring, honest (maybe a little too much), funny, loyal, and generally a good person to be around. I am interested in meeting a man who is adventurous, witty and willing to show me new things. A strong sense of self and being self assertive is a must. If you are in to texting instead of picking up the phone to talk then I am probably not the right person for you. There is a time and a place for texting...and getting to know someone is not one of them. I am always up for chatting so if you are interested, email me.
Coffee and conversation , Cooking , Dining out , Movies/Videos , Museums and art , Music and concerts , Exploring new areas , Nightclubs/Dancing , Shopping/Antiques , Travel/Sightseeing , Watching sports , Wine tasting
Aerobics, Dancing, Other types of exercise, Walking / Hiking, Yoga
I exercise 3-4 times per week.
Middle of the Road
NYC!!!! Probably my most favorite place on earth.
Honestly.....Coffee and chap stick....I would die without both :-)
I am fortunate enough to have really great friends so I do enjoy spending time with them. I love travelling, going to brunch, trying new restaurants, concerts, festivals etc, Every once in a while I enjoy a lazy Sunday not doing much of anything :-)
Hmmmmmmm.....since Graduate school I have sworn off of books for a while.
Z{{Cta}} {{#if HasMoreInfo}} ?{{CtaSecondary}} {{/if}}
|What she is looking for
|5'5" (165cms)
|5'7" (170cms) to 7'0" (213cms)
|Body type:
|About average
|Slender, Athletic and toned
|No preference
|Dark blonde
|Black, Light brown, Dark brown, Blonde, Salt and pepper, Silver, Dark blonde, Grey, Platinum, Bald
|No Way
|No Way
|Social Drinker
|Social Drinker
|Medical / Dental / Veterinary / Fitness
|No preference
|I'll tell you later
|$75,001 to $100,000, $100,001 to $150,000, $150,001+
|Never Married
|No preference
|Have kids:
|No preference
|Wants kids:
|Definitely, Someday
|White / Caucasian
|Latino / Hispanic, White / Caucasian
|Spiritual but not religious
|No preference
|No preference
|Graduate degree
|Bachelors degree, Graduate degree, PhD / Post Doctoral


text:
Originally written on Fox Sports | Last updated 3/12/13
COLUMBUS, OH - JUNE 22: 21th overall pick Riley Nash of the Edmonton Oilers poses onstage with team personnel during the first round of the 2007 NHL Entry Draft at Nationwide Arena on June 22, 2007 in Columbus, Ohio. (Photo by Bruce Bennett/Getty Images)
Riley Nash scored twice, Joe Corvo put one in off the goaltender's mask, and Justin Peters got his second career shutout Tuesday night as the surging Carolina Hurricanes beat the slumping Washington Capitals 4-0, taking the first leg of a key home-and-home series between the Southeast Division rivals. Patrick Dwyer added an empty-net goal, and Peters made 26 saves for the Hurricanes, who have won six of seven and have a 10-point lead over the Capitals, whose struggles are one of the big surprises of the lockout-shortened season. The division is essentially becoming a two-team race between Carolina and the Winnipeg Jets. The Capitals lost their third straight - all by at least a three-goal margin. They were hoping to get back in the race with a sweep of the Hurricanes this week. Instead, the best they can do is a split when they visit Carolina on Thursday. The Hurricanes' blue line was injury-depleted when they were shut out 3-0 by the Capitals on Feb. 26. The reverse scenario pla...
Comments are closed.
What do you think?To leave a comment, you can:
NHL News
Delivered to your inbox
You'll also receive Yardbarker's daily Top 10, featuring the best sports stories from around the web. Customize your newsletter to get articles on your favorite sports and teams. And the best part? It's free!
Follow us on Twitter
|Best of Yardbarker
|NFL News
|MLB News
Today's Best Stuff
For Bloggers
Join the Yardbarker Network for more promotion, traffic, and money.
Company Info
What is Yardbarker?
Yardbarker is the largest network of sports blogs and pro athlete blogs on the web. This site is the hub of the Yardbarker Network, where our editors and algorithms curate the best sports content from our network and beyond.
|© 2015 Yardbarker, Inc. All rights reserved. Use of this website (including any and all parts and components) constitutes your acceptance of these Terms of Use and Privacy Policy. (What's New?)


text:
Thursday, December 14, 2006
© Copyright 2015 Gwinnett Daily Post
Mrs. Ruth Johnston Mann, age 78, of Duluth, GA, passed away on Wednesday, December 13, 2006. She was preceded in death by her daughter, Gwinn Nadine Fancher. She is survived by her: Husband of 36 years: Horace D. Mann, Duluth, GA; Son: David F. Mann, Snellville, GA; Son-in-Law: Gregory Fancher, Tucker, GA; Granddaughter: Deirdre and Shane Hall, Covington, GA; Great Granddaughter: Kaitlynn Hall; Sisters: Ann McCain, Dottie Branch, both of Midlothan, VA, Grace Sanderson, Blackstone, VA; Brother and Sister-in-Law: Bernard Dick and Tina Ripley, Lynchburg, VA; Several Nieces and Nephews. Mrs. Mann was born on January 26, 1928 in Virginia. She was a retired operating room technician after 32 years of service from Scottish Rite Hospital. She was of the Methodist Faith. Funeral services will be held on Saturday, December 16, 2006 at 2:00 p.m. in the Chapel of Flanigan Funeral Home with Rev. Larry Peace officiating. Interment will be in White Chapel Memorial Gardens, Duluth, GA. The family will receive friends at the funeral home on Friday evening from 6:00 p.m. until 8:00 p.m. Arrangements by Junior E. Flanigan of Flanigan Funeral Home and Crematory, Buford, GA, 770-932-1133, www.flaniganfuneralhome.com.
More like this story
- OBITUARIES ( December 15, 2006 )
- Julia Johnston ( May 8, 2015 )
- Velma Taylor ( April 4, 2009 )
- Fern Fountain ( December 25, 2012 )
- Ruby Johnston ( July 23, 2010 )


text:
Book your room at Koreana Hotel
Standard Twin RoomMax Occupancy: 3 guests (up to 2 children, 2 infants)
Business Double RoomMax Occupancy: 2 guests (up to 1 child, 1 infant)
Business Twin RoomMax Occupancy: 2 guests (up to 1 child, 1 infant)
Executive QueenMax Occupancy: 2 guests (up to 1 child)
Executive Twin RoomMax Occupancy: 2 guests (up to 1 child)
Executive Room, 1 King BedMax Occupancy: 2 guests
Get an overview of this hotelCentrally located Seoul hotel near Deoksugung Palace
Lotte Department Store
This Seoul hotel is about 0.3 km (0.2 mi) from Deoksugung Palace, the Lotte Department Store, and the Sejong Cultural Center. Government offices and subway stations are also within a short walk.
Dining, gym, sauna
Koreana Hotel features Korean, Japanese, Chinese, and Western restaurants as well as a coffee shop and a bakery. A fitness center on the 23rd floor offers city views. A sauna is also on site.
Free WiFi
Guestrooms include complimentary wireless Internet access, in-room safes, refrigerators, and LCD HD TVs with cable and free movie channels. Bathrooms come with separate bathtubs and showers.Information missing or incorrect? Tell us!
Hotel Amenities
Hotel Amenities
Koreana Hotel offers international restaurants, a bar/lounge, a coffee shop, and a bakery. Room service is available during limited hours.
Guests enjoy complimentary use of the fitness center on the 23rd floor. A sauna (men only) is available for a surcharge. This Seoul hotel also includes free WiFi, 24-hour business center, a concierge desk, a meeting room, and multilingual staff. On-site parking is complimentary (only during stay).
- Free self parking
- Free WiFi
- Restaurant
- Bar/lounge
- Health club
- Coffee shop or café
- Sauna
- Conference center
- Airport transportation (surcharge)
- RV, bus, truck parking
- Spa treatment room(s)
- Business center
- One meeting room
- Dry cleaning/laundry service
- 24-hour front desk
- Limo or Town Car service available
- Computer station
- Express check-in
- Express check-out
- Free newspapers in lobby
- Tours/ticket assistance
- Multilingual staff
- Wedding services
- Hair salon
- Porter/bellhop
- Safe-deposit box at front desk
- ATM/banking
- Elevator/lift
- Luggage storage
- Designated smoking areas
- Number of buildings/towers - 1
- Number of floors - 23
- Total number of rooms - 337
Family Friendly Amenities
- Free Wi-Fi
- Sofa bed
- Refrigerator
- Soundproofed rooms
Available in all rooms: Free WiFi , Free wired high-speed Internet
Available in some public areas: Free WiFi
Free self parking, RV, bus, truck parking
Room Amenities
- Free WiFi
- Free wired high-speed Internet
- Separate sitting area
- Sofa bed
- Minibar
- Room service (limited hours)
- Cable TV service
- Refrigerator
- Separate bathtub and shower
- Cribs/infant beds available
- Daily housekeeping
- Turndown service
- Free newspaper
- Free bottled water
- Hair dryer
- In-room safe (laptop compatible)
- Bathrobes
- Slippers
- Designer toiletries
- Bidet
- Phone
- Iron/ironing board
- Desk
- Blackout drapes/curtains
- Soundproofed rooms
- Air conditioning
- Private bathroom
- Individually decorated
- Connecting/adjoining rooms available
Where to Eat
Sakae - Japanese restaurant. Tempura, sushi, sashimi, sukiyaki., shabu-shabu. Teppanyaki room. Breakfast, lunch, dinner.
Great Shanghai - Chinese restaurant, with a focus on Beijing and Sichuan cuisine. Lunch, dinner.
Danube - Western specialties, including pasta, steak, pizza. Buffets. Breakfast, lunch, dinner.
Sunrise - Casual café serving coffee, traditional Korean herb teas, fresh juices, beer, sandwiches. Open early morning till late evening.
The Blue Room - Bar with live music. Open evenings till late.
Room service is available during limited hours.
Nearby Things to Do
A 24 hour fitness center and sauna are available in the hotel. These facilities are available for male guests only. A fitness center for male and female guests is available on the 23rd floor.
Hotel Policies
Check-in time starts at 3 PM
Check-out time is noon
Payment types
Children and extra beds
- Children are welcome.
- Cribs (infant beds) are available.
You need to know
Extra-person charges may apply and vary depending on hotel policy.
Government-issued photo identification and a credit card or cash deposit are required at check-in for incidental charges.
Special requests are subject to availability upon check-in and may incur additional charges. Special requests cannot be guaranteed.
No rollaway/extra beds available
Parking height restrictions apply
- Breakfast fee: KRW 20000 per person (approximately)
- Airport shuttle fee: KRW 16000 per person (roundtrip)
We should mention
The property has connecting/adjoining rooms, which are subject to availability and can be requested by contacting the property using the number on the booking confirmation. Some facilities may have restricted access. Guests can contact the property for details using the contact information on the booking confirmation.