Floating Software Licenses

 

General

Floating licenses are used in several applications provided centrally by DESY / IT, e.g.MATLAB or Mathematica. Floating licenses generally offer the possibility to install an application independent of the number of computer or users. However, a limitation is given by the number of purchased floating licenses: When a number of n floating licenses has been bought then only n instances of the application can be started and being used concurrently. To ensure this such an application needs to communicate via the computer network with a so-called license server. The license server handles the number of purchased licenses meaning that he accepts or denies license requests according to the available licenses.

 

Pro's and con's

From the above introductory explanations some pro's and con's result for this kind of software licensing.

Pro's

  • In general floating licenses allow for a more efficient use of (expensive) applications.
  • The application can be installed on any number of computers and can be used by any user.
  • Offers a much greater flexibility compared to hardware-locked licenses.
  • The spreading and unauthorised use of license keys outside an organisation is prevented.

Con's

  • Floating licenses are often more expensive then individual ones.
  • A MATLAB floating license for instance costs four times as much as an individual one.
  • The use of a floating license requires an intranet network connection to the license server.
  • E.g. Notebook users have to think about the non-intranet use.
  • The concurrent use of floating licenses is limited to the number of purchased licenses.
  • If all floating licenses are in use further users cannot use the application.
  • A license server has to be provided and operated.

 

Hints: Handling of floating licensed software

The floating licensing model is a cooperative model - it relies

  • on the willingness to release a license if it is not used any longer as well as 
  • on the assumption that licenses are not blocked by "pro-active allocation" e.g. early at the beginning of a workday or thinking "My application is of that great importance ...".

 

Having this in mind please think of the following hints:

  • Close the floating licensed application if you do not need it to release the license.
  • Doing so other users can use the application.
  • If possible do not use floating licensed software constantly for longer periods like e.g. several weeks.
  • This potentially prevents other users to use the application.
     

Hints: Where should floating licenses (not) be applied?

Floating licenses are often used in centrally maintained installations under the aspect of minimizing the license costs for an application (see above the chapter "Pro's").

On the other hand the floating license model has some implications in which situations floating licenses should better not be used or in which one should keep at least the following in mind:

  • From a very general point of view a guaranteed availability of a floating license is not possible since all licenses may be allocated by other users, the license server has a failure, the network connection to the license server is broken, ...
  • E.g. for measuring purposes at beam lines or machine monitoring it seems to be more appropriate to use an individual license with the floating license option as a backup for local failures.
  • An individual license also would be more appropriate if you need a license constantly for longer periods like e.g. several weeks because it is often clearly cheaper for DESY.

If you are in doubt which model fits your requirements please contact the UCO - we will assist you to find the best licensing model for your application.

 

General remarks

In general, we are monitoring the usage of centrally floating licensed software. Thus, we will be informed if licenses are running out of availability. Only in such cases we check how long each license is in use and contact users if they are keeping a license for an unusual long period (about a week or more). The purpose of getting in contact with these users is not to push them to release the license but to check if they have accidentally forgotten to close the application.

Another aspect to be kept in mind when discussing floating licensing is that the implementation of floating licensing used in an application may be very vendor-specific. To show what that means let us consider the implementation of floating licensing in the applications MATLAB and Mathematica:

  • MATLAB itself allocates a license when it is started and releases it when the application is terminated - but if a MATLAB toolbox is used the toolbox floating license is not released after its usage, instead it will only be released when MATLAB itself will be closed. This not documented behaviour can obviously result in very long allocation times of the corresponding toolbox license.
  • Mathematica consists of two modules: The compute kernel and the graphical frontend. The frontend can be - and is often - used to submit expressions to the kernel, but it is also possible - and used - to use the kernel directly (without the frontend) for the evaluation of expressions. 
Unfortunately, Mathematica distinguishes two kinds of floating licenses to handle the usage of the frontend and the kernel. Even worse, Mathematica acts in different ways depending on the use of either the Linux or the Windows Mathematica version:
  • Starting the Windows Mathematica frontend allocates a frontend and a kernel floating license thus ensuring the full functionality of Mathematica.
  • The Linux Mathematica frontend in contrast only allocates a frontend license while a kernel floating license will be allocated only if the kernel is really used; moreover, the kernel license will be realeased after some minutes of kernel inactivity (with the frontend still active!).
This behaviour may lead to a situation in which all frontend licenses are assigned making the users mistakenly think they are safe to get the full Mathematica functionality because they have allocated a "Mathematica license" - but still with a number of available kernel licenses. If in that case other users use the kernel directly and allocate all kernel licenses the relative absurd situation can occur that the frontend users cannot perform calculations.

 

DESY provided software using floating licenses

The following table lists which software provided at DESY is using floating licenses - please notice that there may be more floating licensed software which we at IT are not aware of!

Hint: If you want to be sure that software does function also without a connection to DESY intranet, e.g. if you are travelling by plane or train, please test it at DESY disconnecting your computer from any network connection.

All licenses listed below are hosted by central IT license servers, in case of any questions please contact UCO (phone 5005, uco@desy.de)

Software Responsible Group Remarks
Altium IT  
IDL IT  
INTEL Fortran Compiler IT  
Maple IT Windows Maple installation use local licenses which are also available for linux if needed
Mathematica IT a limited number of local licenses are available
MATLAB IT  
MathCad IT  
Origin IT time limited local licenses may be borrowed within Origin
X-Win32 IT  
ZEMAX IT  
     
I-DEAS IPP  
SolidEdge IPP  

 

Help

If you need help / advice or are in doubt whether floating licensing is an appropriate model for your application or not please contact the UCO.