AV-Portal 3.23.3 (4dfb8a34932102951b25870966c61d06d6b97156)

The Cython Compiler for Python

Video in TIB AV-Portal: The Cython Compiler for Python

Formal Metadata

The Cython Compiler for Python
Title of Series
Part Number
Number of Parts
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Production Place

Content Metadata

Subject Area
Stefan Behnel - The Cython Compiler for Python The Cython compiler is the most widely used static compiler for Python. It is used to speed up Python code and to extend CPython with fast native extension modules that process huge amounts of data all around the world. This talk by one of the core developers gives an intro to using the compiler and an overview of its major features. ----- The Cython compiler is the most widely used static compiler for Python. The code it generates is used in countless critical applications that process huge amounts of data world wide. Cython has two major use cases: to compile Python code into fast native extension modules, and to connect native code to the CPython runtime. The main goal of the Cython project is to make it easy for users to manually optimise their Python code to make it run at C speed. This talk by one of the core developers will give an intro to using the compiler and an overview of its major features. Outline will be more or less as follows: * Cython: intro to the project and the compiler (4 min.) * compiling Python code - how to do it and what you get (3 min.) - a tiny bit of distutils (2 min.) * static typing and Cython extensions to the Python language - static typing in Cython language syntax (3 min.) - static typing in pure Python syntax (2 min.) - why Cython's type system is cool and what users need to know about it (8 min.) - Cython for optimising Python code (5 min.) * quick intro: talking to native C/C++ code in Cython - using external C APIs (4 min.) - using external C++ APIs (3 min.) - how to build and link in distutils (2 min.) - notes on ways to wrap large C-APIs (1 min.) * quick overview: special features for high-performance code - NumPy integration and memory views, fused types, parallel loops in all brevity (3 min.)
Keywords EuroPython Conference EP 2014 EuroPython 2014
Group action Computer animation Software developer Lecture/Conference Googol Website Coma Berenices Compiler Core dump Maxima and minima Mereology
Mobile app Reading (process) Software developer Software developer Prisoner's dilemma Source code Android (robot) Information technology consulting Compiler Incidence algebra Information technology consulting Variance Wave packet Process (computing) Dedekind cut Lecture/Conference Compiler Order (biology) Musical ensemble
Slide rule Game controller Group action Multiplication sign Projective plane Interior (topology) Compiler Bit Mereology Mereology Special unitary group Measurement Value-added network Variance Typsystem Type theory Word Computer animation Lecture/Conference Cycle (graph theory) Summierbarkeit Information security Physical system
Kummer-Theorie Game controller Machine code Compiler Insertion loss Theory Formal language Lecture/Conference Different (Kate Ryan album) Diagram Endliche Modelltheorie Machine code Interface (computing) Projective plane Constructor (object-oriented programming) Open source Coma Berenices Machine code Cartesian coordinate system Oscillation Formal language Compiler Subject indexing Type theory Field extension Fluid statics Computer animation Right angle Modul <Datentyp> Mathematical optimization Chi-squared distribution Arithmetic progression Resultant Library (computing)
Machine code Matching (graph theory) Compiler Compiler Computer animation Representation (politics) Pattern language Module (mathematics) Cycle (graph theory) Endliche Modelltheorie Library (computing) Form (programming) Library (computing)
Functional (mathematics) Machine code Line (geometry) Multiplication sign Compiler Special unitary group Computer icon Revision control Data conversion Summierbarkeit Social class Scripting language Machine code Computer file Sound effect Range (statistics) Line (geometry) Computer animation Compiler Revision control Different (Kate Ryan album) Compilation album Website Social class Object (grammar) Task (computing) Library (computing)
Web page Machine code Line (geometry) Multiplication sign Adaptive behavior Compiler Special unitary group Variance Element (mathematics) Revision control Mathematics Lecture/Conference Different (Kate Ryan album) Maize Data compression Source code Machine code Content (media) Coordinate system Computer animation Compiler Revision control Different (Kate Ryan album) Quicksort Arithmetic progression Row (database)
Scripting language Building Connectivity (graph theory) Moment (mathematics) Core dump Distance Protein Event horizon Rule of inference Metadata Computer animation Set (mathematics) Website Modul <Datentyp> Endliche Modelltheorie
Kummer-Theorie Context awareness Scripting language Kummer-Theorie Building Compiler Ext functor Core dump Metadata Element (mathematics) Field extension Centralizer and normalizer Computer animation Endliche Modelltheorie Module (mathematics) Modul <Datentyp> Configuration space Endliche Modelltheorie Object (grammar) Summierbarkeit Library (computing) Form (programming) Library (computing)
Trail Scripting language Image resolution Compiler Special unitary group Machine code Metadata Variance Product (business) Medical imaging Internetworking Endliche Modelltheorie Summierbarkeit Library (computing) Computing platform Machine code Building Software developer Core dump Ext functor Menu (computing) Portable communications device Formal language Compiler Field extension Computer animation Compiler Computing platform Modul <Datentyp> Energy level Quicksort Window
Machine code Context awareness Machine code Direction (geometry) Moment (mathematics) Compiler Mereology Portable communications device Special unitary group Machine code Compiler Formal language Inference Word Lecture/Conference Compiler Computing platform Energy level Figurate number Fundamental theorem of algebra
Frame problem Meta element Functional (mathematics) Group action Game controller Linear regression Control flow Survival analysis Compiler Electronic mailing list Complete metric space Formal language Exclusive or Lecture/Conference Object (grammar) Algebraic closure Software testing Social class Operations research Software bug Suite (music) Linear regression Division (mathematics) Control flow Complete metric space Formal language Computer animation Personal digital assistant Function (mathematics) Video game Social class Software testing Quicksort Exception handling Electric generator Data structure Programmschleife
Frame problem Meta element Standard deviation Group action Functional (mathematics) Linear regression Compiler Electronic mailing list Complete metric space Benchmark Different (Kate Ryan album) Object (grammar) Algebraic closure Cuboid Typinferenz Mathematical optimization Operations research Software bug Machine code Standard deviation Suite (music) Control flow Formal language Fluid statics Computer animation Function (mathematics) Order (biology) Social class Software testing Exception handling Electric generator Programmschleife Data structure Spectrum (functional analysis) Local ring
Standard deviation Suite (music) Machine code Presentation of a group Divisor Suite (music) Connectivity (graph theory) Electronic mailing list Sheaf (mathematics) Computer simulation Compiler Bit Line (geometry) Raw image format Benchmark Fluid statics Benchmark Computer animation Lecture/Conference Function (mathematics) Typinferenz Integer Gamma function Summierbarkeit
Operations research Machine code Machine code Theory of relativity Tape drive Interior (topology) Calculation Drop (liquid) Mereology Special unitary group Computer programming Type theory Data management Plane (geometry) Fluid statics Computer animation Lecture/Conference Different (Kate Ryan album) Musical ensemble Object (grammar) Data type
Machine code Tape drive Connectivity (graph theory) Multiplication sign Interior (topology) Calculation Compiler Machine code System call Variance Formal language Word Fluid statics Computer animation Compiler Summierbarkeit Form (programming) Data type
Execution unit Kummer-Theorie Standard deviation Structural load View (database) Online help Direction (geometry) Demo (music) Computer file Interior (topology) Cellular automaton Maxima and minima Ext functor Letterpress printing Special unitary group Host Identity Protocol Variance Kernel (computing) Computer animation Uniform resource name Kernel (computing) Data conversion Integer Summierbarkeit
Logical constant Kummer-Theorie Presentation of a group Java applet Range (statistics) Special unitary group Unicode Information technology consulting Medical imaging Different (Kate Ryan album) Kernel (computing) Vector space Compiler Social class Theory of relativity Arm Constraint (mathematics) View (database) Interior (topology) Electronic mailing list Sound effect Bit Instance (computer science) Control flow Sequence Arithmetic mean Process (computing) Oval Order (biology) Data conversion Pattern language Point (geometry) Network operating system Cellular automaton Letterpress printing Infinity Term (mathematics) Ring (mathematics) Energy level Data structure Data type Weight Basis <Mathematik> Line (geometry) Density of states Algebraic closure Personal digital assistant String (computer science) Function (mathematics) Iteration Library (computing) Run time (program lifecycle phase) Structural load Euler angles Weight Direction (geometry) Multiplication sign ACID Parameter (computer programming) Mereology Logic synthesis Variance Plane (geometry) Moving average Process (computing) Data conversion Library (computing) Position operator Computer file Ext functor Range (statistics) Variable (mathematics) Type theory Vector space Compiler Website Convex hull Right angle Resultant Functional (mathematics) Identifiability Gene cluster Graph coloring Natural number Operator (mathematics) String (computer science) Program slicing Drill commands Integer Summierbarkeit Mathematical optimization Task (computing) Context awareness Addition Execution unit Machine code Sine Mathematical analysis Letterpress printing Inclusion map Pointer (computer programming) Computer animation Formal grammar Object (grammar)
Point (geometry) Functional (mathematics) Context awareness Presentation of a group System call Machine code State of matter Computer-aided design Sheaf (mathematics) Special unitary group Oval Operator (mathematics) Core dump Physical law Process (computing) Traffic reporting Library (computing) Data type World Wide Web Consortium Context awareness Focus (optics) Constraint (mathematics) Patch (Unix) View (database) Weight Letterpress printing System call Electronic signature Word Pointer (computer programming) Process (computing) Computer animation Oval Function (mathematics) Summierbarkeit Iteration Object (grammar) Library (computing)
Point (geometry) Functional (mathematics) Machine code Structural load Multiplication sign Strut Disk read-and-write head Graph coloring Machine code Twitter Lecture/Conference Data structure Metropolitan area network Physical system Computer icon Electronic data interchange Theory of relativity View (database) Point (geometry) Computer file Constructor (object-oriented programming) Interior (topology) Ext functor Letterpress printing Instance (computer science) Word Computer animation Object (grammar) PRINCE2 Laptop
Machine code Structural load Multiplication sign Run-time system Unicode Machine code Estimator Mathematics Kernel (computing) Process (computing) Endliche Modelltheorie Local ring Position operator Physical system Area Metropolitan area network View (database) Computer file Menu (computing) Ext functor Bit Variable (mathematics) Formal language Type theory Process (computing) Exterior algebra IRIS-T output Energy level Programmschleife Laptop Web page Functional (mathematics) Numerical digit Network operating system Cellular automaton Infinity Wave packet Population density Lecture/Conference Term (mathematics) String (computer science) Hierarchy Integer Loop (music) Module (mathematics) Electronic data interchange Information Uniqueness quantification Coma Berenices Density of states Compiler Computer animation String (computer science) Commodore VIC-20 Iteration Local ring
Pairwise comparison Electronic data interchange Numerical digit View (database) Multiplication sign Computer file Density of states Unicode Route of administration Machine code Computer animation Lecture/Conference Different (Kate Ryan album) Kernel (computing) Right angle Process (computing) Energy level Programmschleife Loop (music) Laptop Condition number
Direction (geometry) Demo (music) Computer-generated imagery Number Typsystem Estimator Bit rate Lecture/Conference Buffer solution Summierbarkeit Electronic data processing View (database) Forcing (mathematics) Weight Mereology Semiconductor memory Parity (mathematics) Shape (magazine) Entire function Array data structure Radius Computer animation Energy level Object (grammar) Local ring
Direction (geometry) Computer-generated imagery Image processing Parameter (computer programming) Event horizon Dimensional analysis Mathematics Lecture/Conference Semiconductor memory Buffer solution Energy level View (database) Moment (mathematics) Range (statistics) Semiconductor memory Parity (mathematics) Shape (magazine) Type theory Array data structure Loop (music) Computer animation Doubling the cube Buffer solution Right angle Energy level
NP-hard Implementation Multiplication sign 1 (number) Floating point Generic programming Graph coloring Revision control Lecture/Conference Different (Kate Ryan album) Velocity Forest Damping Integer Implementation Summierbarkeit Algorithm Electric generator Floating point Bit Shape (magazine) Type theory Computer animation Compiler Buffer solution Pattern language Glass float
Point (geometry) Group action Functional (mathematics) Machine code Texture mapping Range (statistics) Sheaf (mathematics) Compiler Open set Parallel port Arm Formal language Wave packet Writing Mathematics Field extension Endliche Modelltheorie Mathematical optimization Machine code Parallel port Range (statistics) Shape (magazine) Open set Thread (computing) Type theory Field extension Computer animation Right angle Modul <Datentyp> Programmschleife Resultant Library (computing)
Sequel Observational study Texture mapping Special unitary group Arm Formal language Writing Bit rate Lecture/Conference Social class Machine code Mapping Concentric Fatou-Menge Interface (computing) Maxima and minima Formal language Symbol table Particle system Type theory Field extension Computer animation Vector space Pareto distribution Right angle Modul <Datentyp> Energy level
Area Machine code Standard deviation Computer file Mereology Special unitary group System call Formal language Thermische Zustandsgleichung Declarative programming Writing Field extension Computer animation Pareto distribution Lecture/Conference Energy level Summierbarkeit Writing Library (computing) Condition number Social class
Context awareness Execution unit System call Quantum state View (database) Coma Berenices Graph coloring Declarative programming Template (C++) Mechanism design Computer animation Oval Lecture/Conference Function (mathematics) Website Natural language Process (computing) Library (computing) Library (computing) God Data type
Randomization Presentation of a group Machine code Mereology Special unitary group Computer programming Formal language Online chat Computer configuration Semiconductor memory Compiler Series (mathematics) Position operator Social class Identity management Area Software developer Moment (mathematics) Type theory Arithmetic mean Compiler Website Pattern language Species Cycle (graph theory) Glass float Virtual machine Floating point Online help Generic programming Wave packet Lecture/Conference Energy level Software testing Implementation Summierbarkeit Metropolitan area network Pairwise comparison Matching (graph theory) Diffuser (automotive) Denial-of-service attack System call Shape (magazine) Compiler Subject indexing Word Voting Computer animation Window Local ring
OK and so on and in this part about site on renal cell cycle despite it was just not know exactly article is the 1 from this group so and this is
kind of of general and then go on to show you broaden your everything you can talk only and so you are in the 2nd group the minimum
much of the so this lot on so those 2
and at another and most of them in some prison advocates incentive to meanwhile ad and and contributes to the reduced matter was really is think you go people have anyone makes reading books again politically and take a look religious greater that get unlimited reading and and what is that and that's like particularly people read what's really going on people often that incident developer consultants strain and the things that have to do and so training so if you're interested in don't but different and there all only but we have work on order to that page and have a look at what I want to have a damn well there's some article other sources and modern ensemble the more at the the process so it's no there's an intuitive program and recommend
legislation for Python both measures written inside and so the some of the main project and work for cycle 7 . 4 B of the charter on so the the
parts of the control so socially what centromeres would be desirable commodity
and damage deployable certain type system which actually involves some of the demonstrators you ontology you learned words what makes it why it's also a great security integrated with the goal insight on how lexical to you know right words and then in the end of a little greedy high-performance features that were granted to complain and she got a bit confused with the times the following that have the action of 45 minutes for this slide so you'll see them and and
of so a sentence I think there is infinite projected cycle from or it on to the quadrants progress I mean for it's obvious to you that users millions so if you have any questions about it just to uses millions from and uh there will in the world of and comes from you manage the oscillation theory just don't come along very happy to answer I don't know Results project is a kind of compiler or almost entirely on renamed Ernst you take model regulatory control to just from the compiler and have compared the on it since they take on which apart from from home to see by using the difference CHI on as just said a corporate musician so you usually get kind of a notable of performance or is on the the 1st thing that size because it's it's tended to have a language that is not only shows that hasn't gotten there you can also the actual height on code now which has an extended index and has
additional constructs on which knowledge to the West type annotations which tells the the compiler make fosters employment documents to the user as the loss of the rights of fossils and models of the diagram and interface triphones we examined of libraries by using the asbestos for those individuals fortune to for example and 1 the c interface can be used for any native code anyway so just as defined all OK so
how do you decide what will be the right kind and forward or a 2nd cycle and then translated into the home this the compiler builds ownership library for the kind of and that model each of the universal pattern 2 and pattern 3 actually presents recent work on in the form of a country of your salad and then we really have
take on the support rendered data came out the match the amount of the work and represent for a cult of the synthetic reference material so to that happens I 2010 but that redirecting the drawn so that you don't have to it is example as of
providing patent-holding of stupid little effect scripts has a class through method interesting have function has the function into the class of executing do that good examples and then
when compiling you can just use the site from the command for to reduce their insults icons of this work from where they're actually from New Mexico versions of conversion doesn't this all the time but rural communities that have to the best cyclist that's just so sad announcement 500 in place of this thing that compiled sets of objects shared library for Europe and then you get the fire from the and chat library which can just important and invasive 3 thousand lines of C code and so that's big 1 entitled quantitative something
I think that progress and lots of of probabilities defines which methods for different C-compiler different page 1 version says that version 2 rows and rows and 3 elements
different minor versions of a lot of difference is that the change over time so some the compression and has a lot of knowledge about how it's affecting people's over time and adaptive sort of actin content but the best of of what helpful circumference and the general German court
of that major quote to chose what culture have been it's the kind of easier to to trace your code to generate coordinators ever have that and there's definitely a lot of a lot of code it's definitely absence and do not want to write report of and just rewrite because since you don't have to the and target
proteins that now and in the back of this type of and actually that everyone to this rule the yourselves you use this just for a moment competitors not in this room on and this is how you can use site on distances so we just saying to the extinction models and they come from socialization something also and psychologists but it's also a component of events and you wanted to the metadata for it and there's interview this is the about of century to build and so the
the more complex cases with new and this is from consideration after a central element models for example you're building a specific libraries have sentence and kind of dependencies in the passage of changing something this and other was forested as for any as extension model that it was built in Python dissidents of traitorous extension object for them which is the that metadata from builds on this side of the form that is more context you can do it yourself and just hasn't
assessments what's the same way that just makes the to drop the metadata and builds your portrait 2 and get out of it
is kind model called the
society and generates it will be compiled but if you were all images just constant and and which means just in only MCC on Windows on but there are also some people using it with the Intel compiler for example and the production survive on most of all major platforms the Internet windows that people using and it is the resolution in the sense that all sorts of performance and there is no impediment to look for a general 3 or 4 currently and we're keeping track of what development of 5
so work testing and and dropped to 4 and so forth really old 2nd repair convergence so the next release that made awareness for it to the
forward for a frightening 1 and led to the old figure 1 written that what launch using a and but it still supports any any reason so many somewhat reasons paper in that word OK so the 2nd language to the self moment follows 507 of for part of recent accidents Brussels fundamental inference on just have to tell the compiler and this is called the language that the use of this compiler directives and just compiled code from Fremont and
regarding which features of Triton itself was compiled from more than 98 % of the regression testing on that consists survival of which means that we have a pretty much complete Python language for its we support classes sentence social exclusion is generated all sorts of features that group of seeing their life anything that of patent teachers supported by comparing the a conventions and control structures also stuff None of minor divisions that you're rather unrelated to in practice which started in defense of functions does anyone know what friends are and that's a
couple of people seem to be that 1 so we don't have benefits of controlled lighting and is the case where they actually
even without knowing uh and outcome of my box transition you're old books on the spectral of intelligence should as to get of of speedy
2nd order is very efficient because the local standard and optimistic optimization applies to code that general optimized for those that have identified 2 types of many different functions also which means that it will simply run faster because announced I just said it had interesting set of functions so I don't have to jamming attacks
and so that this is a list of integer whatever below the line extends you the book father remittances and you can help out bits to make sense and that talking about so more about the the present present benchmarks suite which
contains the raw fuel tank forwards including general interest because cultivated engine section of the computational models that do you have cold and just the component data of factor of so what contributed to the world doesn't sound all that much compared to present to but that's what you get on books and commit to a lot faster you know and the tension that was
the band what's the detected regions and so the the 2nd lesson to put have type things that cold which of the comprise that node does not just any arbitrary program objects education offered vendors and that will make the you co drop
some parts of the code that uses variable at the plane instead of logical relations of some managers called and what and made ladies and died it is just you know that is thought to different presence in city removal the and that's a
syntax which using inside on codes In the 2nd language and there's also standards for occupied sitting just add of conference in Europe this is decorated here to function at present function of and have accepted in Python wouldn't decorative pure word had components I certainly understand on the good thing is that we can exploit employed as exactly forms matters so is the sum when sitting in political articulatory where did real bottom it's hard but it documents and to have annotations and way faster displayed by optimizing some some bits of and you would normally supply of high computational cost you would normally expect the call 100 times
on 1st up look at so this is
the yeah so the the personal so those are the only and so on this the only really tiny little example achievements of this a bit bigger and investment to make that
so 10 example just as capable integer standard of value 1 to pursue for and then printing it and to get what it is that and this direction and most of the kernel
restart you can try them
training the 1st working on so what is the evidence that have the integer and you this and solemn attitude true and freedom objects for you and the Python objects and positive for different but it's another example of but this here and some sequence of others unpicturable his on uh and then iterate over and some of but there is an example of a positive range and that's what was present 3 so mentioned is in its revolver 0 0 9 all passengers from and it'll added up at this level meaning of here from this is it'll I get the value from the nature of iterator and image and some of the variables integer variable you will see addition here and returned and this creates the object and then and from this is a Java it looks as if she works and that in just a 2nd year as that of the site on Wednesday called on the trust the little type analysis for for Europe and choose your heart and this was a college this is how it made up and and you can take a look at what it may affect and 1st he called Germany just the iteration and fun thing about it there's a color optimization so he can and I see a guy called them the started from this should multiple which is kind of the most common cases for iteration and led to regional list what time and and so kind of an optimistic optimizations that say if it's a list during classical the and you can see this line you might know kind of means there's a spike operations taken place and widening instances the plane the and in between those for anything which are and you can see the related planes operation suggests that some of your best and that recall get 10 December this all implemented in a range of religious right and forward as you would have been the same difference these 2 variables I integer variables and that was the best but it is another example but a character pointer from somewhere so that's kind of basis the structure on to control and monitor which in terms costs them from and then produce so about what's the whole string and then assesses only that convert that to Python objects of into jobs and printed and when you turn the character pointer but also knows that it needs to convert it to an object so convinced that appointed to lecture about grammar and when again encoding and decoding identificare point and and said what decoders the effects and enables that kind as you would expect that it was not a character point about advice images were exactly the same way on and a little bit more inefficient and needs to be because I see strings a character pointer strengthens the bond holdings associated with them they're just point and so in order to figure out how much of this thing the converse with a cost on and the origins of all of the clustering and then have use present results of the point and went into the decoding functions internally and sensorimotor learning among the string is 0 7 characters but a consultant with the slice pointer and that's more efficient because there's no run-time the instrument detection certain 1 part 1 more thing here what work practices so we had to do manual according to the OK what I wanted but the bad thing that would normally get too cold by each of 8 and origin constraints and not made by saying that they were 1 if you want not by strings or gross things but and the cortical letters interfaces so then compile directives the present in and so that just associated return S and the returned to the decoded signal constant for a automatic OK so this is kind of the convergence that Texas and here's another little example using the H functions from this the standard library and using it to part as quite strings into an integer and so what it was I write a pattern function that that's in some kind of called it was and the western at 1 time works out to has bytes in the end point with by as argument and 1 with by the array and both were exposed for us to the character pointers but a to identify character pointer in returns since the integer value of the size from a very useful but that's 1 the research from that of the it converts the integer value that has an object the to get an idea of successful but just just of example but I'm using standard library of this is supposed to stand the library yesterday some and using to objects from a string that and and weren't doing this is all it taken by 10 years later and was that plain-paper operations which gives me a list has this assignment into a vector so that's the answer that called a gets into a successful vector from here I can prints and the vector which needs to translation back and to hide funds so that's converts the synthesis vector into a this again print I can just show you what does that we're running at so printed there that's me no at the Python this of constant and this is the part of the decoder as a acid through automated continent and the negative weight over the vector and when it was found that finds this little stringent was present in the vector I think about so that we consider be found and the next thing I'm going to present position to the function and just and it's in the vector the whatever the it's want to return and that's and come with this 1 and this Europe and tells me that happened at 1 of its CH and it's going on at the next 0 it is used as a so back and forth I some those classes that and we like Kullback on some continued to call that and impact it is it is the task of CM and forward and you want to quantify then at some point whenever something happens on that for any item list or something that's but so if that and see so it's a bit of risk because of a well functions Python states that the collective closures arm as he does not have noticed what you haven't seen find that the way you of that work in the it is found not
only has your function so points to use functions but also has been a pointer to some states to some data from which is then called it's called passenger called the the publication of issues uses that they know what it In other words you can remember and what state that's that's supposed to causal something because you can see the temporary so the idea signature of college conceived as path
in something more pointed to the context and and what maybe some more data the College of but the function that uses a callback as in the past and the function pointer and has in the context of this void point of it's it's the the state's fault and then somewhere in between here is and present character pointer iteration over its report for the and and whenever the final and the small arteries baby a common this is wonderful but they never find a cold call that and so it is by the use of what I'm that and then implemented this call them up and saying OK the context and getting it this section by the so and passing through here is not how to avoid point but objects present objects on and then whatever character was found the library focus on collecting it is this to get a function calls all of some and trained by and then perform a function of the processes constraint so 1 over you find call this depends character functions and the the context and possible in this appointed him of by the talking the monoclonal or person by and that so that the code operator and thanks to this weights so what happened is the core my up assumption here told this function is use the sum this sense and functions called call and kind of holidays OK that's that's for the tional plants couple
from more but what time this is an example it just restore that come to a head man and so it turned his example of
constructs so thing the 2nd the system and this is way I want to find the structure of my code I don't think so see that's kind of the the the words that tells you to use the definition makes coming next and then as there defined practical point it has 2 double values x and y and those been system Don on 10 function here that uses this so this structure and 1st and cruising as a convention used object relations and that's a concern for a point for me the next 1 otherwise to colors 123 analysts and is the right structures for the realizing that and implemented but I really like some then entering the market values here this is sufficient for instance the American writers 2nd to code but it looks like and running at yeah sun cream functions and then when it call it the the prince 1 of which is double that of x and returns the data from me and I wouldn't have expected that but the trend was used from and automated translated it from me which and and that they have divided into from this structure and that's kind of each 1 of his
way to represent a threat because there many then don't have the smallest to lose all aspects were considered a of the hands the time
so all the example of of political process and 1st of the current through much of this going
on so 19 as it is a function that iterates over what something in the past and we're not telling you what is but this is a sector would severely constrained and then the operating on so the training over the course of enumerating and and find it hard to find that marriage I was the 1st character of friends and a return to the position the began creating some some dummy data here the continents string a lot of times and then when 1 2 3 and then because that's what I'm looking for the and then run the whole thing and some you know that there's a position way back in and the string which has what to so and but I think that the runtime environment and see how long it takes to move kind of hierarchy to so the longer the same and then and what it is doing here is and use cancer that some of you know sigh fancy somethin syntax and actually change much higher than quotas Python code still inside you know when you compose sometime information that can be exploited so the changes that have been working the magic from model which is kind of a dummy modules when using term but the 2nd stanza goes I know what what it does and have a function is called local which allows us to find find the types for local variables them saying as so the idea of housing in areas such as servants of the spread of freedom is constant on and same that's the some really at a little bit integer type which the internal to represent the unique character so this page is for the 1st year not put any unique alternative Manson integer type that were the density the inputs to the input characters and the rest of paper the court system changed but as before as and so when I run this compiler so tells me have generated called for it and tells what does all this using some some of the city I called find out of the characters in America there is a bit more the main thing the use the really much many text estimate before iterates as members of the trade and then for times i it has converted into a there and restaurants and see if and
so a comparison kind of
which currently runs for that an it
had lost so this quote that ending of the major differences in some of the the 2nd condition of things the and other 1 right and the random saying time so the difference is not entirely and does millisecond microseconds that the OK on that the much but I wanted to show you demo I don't know about the
other high-performance features that we say that all so the
population and
and so that local features that's from people use when they are doing large data processing and the direction of the force in the entire data for example comparing are
usually then what they want to use weights to unpack these objects these numbers a objects it is something that can be processed efficiently estimate of evidence of wanted as rate the radius and course that that's the use of the main idea what people want and and we have added a
simple syntax for which looks a lot like what you would do remember wine I at the moment sizing syntax but and this is the syntax and boxing low level data that company that's and dimension to them MIT that influence one-dimensional bytes of data but also among various the fortunes of receive buffers that image processing is done way a lot of the event and all you have to do is you have to to say conservative assignment in essentially two-dimensional buffer so consider 2 arguments of type double that's it and then you can iterate over it can just say what it was decided in 1 direction the size of the notion of a nested loop over it and on narratives at any 1 to each item and that and this strength so the last 2nd feature of this members normally used here that support efficient pricing so changes before stored you can just say OK I don't want to run the forward over the whole right I'm only interested in all the minds of a 2nd line and so it has done exactly as efficient just
recalculates the fossil layouts in memory and runs over OK just that's the topic
of velocity of 1 implementation with many specializations but it's also very common in numerous that you want to write algorithm once but haven't run efficiently on lots of different of integer types of floating-point types that pattern types in to them on and really just 1 of the 2 ones because hard enough to get it right once you don't want your topic forward over the so we so that was what we call his sciences have compiled from generic and and the way it works is to say time defining a type of of fuse type which are called voltage and it's made up of 2 different types of preference the types one's called floating once doubles 32 bit float and 64 bit float and then a and so it will just understand it and was say OK so getting buffer here but institutions type and so with articles and generate versions from the 1 that optimizes the 3rd its for the 32 bit floating ones optimized for 64 bit of that you that all of them we have a predefined times all floating-point transported to retired ordinary types but people use it with the same color year of different types of work on forest decides and not present room and its hands 30 different versions of the court of what they
needed to solve problems I think the
next this summer as it is literally a pretty 1 everything open until so powerful and that's another thing that people love and marriage they to parallelize the code because that is used to model data from and and they want to use as many courses the or more on they always want to use more costly can I so there's a way to to have Ferrocarril groups and also triple sections so this is not unusual for American suitable for that any fertilization you going on then all you really have to that is to replace of the room for i in range looks forward by 4 and in range from a special type of parallel model to this and then you crawl which runs in Paris yeah and 20 should not forget to free the dual so that you get actual of structural cold but and that's all you need to do so the range made for the dual and then you have to signal that runs in parallel that so
on promotion through from of functions that are present quoted efficiency and most of these interfaces medical and see that you call me too I just reported on the user to speed up the same type of models that can concentrate and optimizations that have to rewrite everything in your training whatever only just drop it society optimizing will see fast and the better the results major changes in on the right the extensions for surprise on the entire farm for according to them into small languages and the right you can write you can wrap C libraries in Python by just using points phantoms right article only and so
in humans and mice vectors for it is identical to the class that you call and is the interface and so you can really
concentrate only on on writing efficient mapping for sequel to present was given in isolation right and don't care about that too many details and 7 it's always present the and and that what
really like about it that users free reach a language of several lower the freedom particle on the principle steady 20 principle that so that's it exactly the type of language and you get a 2 per cent of the benefit was trying some of the Ford and so that's really loves to their friend rightfully % to some stuff and the you huge developed so the standard simple way to save the minimum symbol rate constant you called and just don't study low-level we must so that's
inside for the fast food writing
just as as right in fast the
conditions for the most part we have 5 minutes for questions there's the microphone the camera please come to the front we you can hear how who would be to include external year syphilis plus libraries and just the standard library for example and there's something else all of this is was just have a template-driven and so on and not entirely supplanted but there is evidence in this course so that can declare class and status template science but so I'm going to have an example here but you can that there is a representation of of patient tells the call for example some of the so-called basic you want to do is to say see the extensive using external declaration from some file and had a file and then you just copy the definitions so the the class and this is these methods are in the area of the best use so suppose methods of the Americans
incentives and so L. and that also works but of this year for the entire example and so what did a I and worse because really shouldn't the declarations for the sampler for this the library where authorship declarations for that to business as to continues farmer so you can
just use those right away if stuff you can determine the color monitoring mostly stuff from have deteriorates I wanted and then you you just say important stuff here is look all God genetics and using types of just possible teleological templates for + plus so for those you of 10 plates instead of defining your review sites and well it's different mechanisms the
I don't think so because society and has to understand somehow content is still really have a type you know what the exact so afterward since this is the 2nd kind of you the same thing but this was the
genesis for generator level and everyone would work in this book was compiled by reusing size extensively in all of machine learning library and and I but 1 with the problem we have this we you use all support for skeptical checking for example using pilot and landslides and floods isn't possibility then we can use the to decorators who's of the locals for example the size and the locals to give classes of something else there's nothing similar all said had that also rich and so on into next to presentations and there's a lot of the so that most of the 2nd index is available at the pattern level but only things that are that they can actually used from Python percentages Python so what you can do that stop the cycle because there is no provision for talking to C code from python in ways that would allow to do so that's only mapping and if using the Python syntax for his 2nd quote then you just can't talk to simple but that's about it and everything else or other language features of available present the OK and more questions 1 more last 1 the 1st thing vote for the tool that's again and i as cited in the past may have trouble between moving from related to Windows because simplistic compilers were different I mean it was simply because 1 compiler was ignoring something like chat site and generated which was since this compiler Lawrence so I was just wondering if you have some kind of test to be sure that code emitted by society at worst on these precise by you have these machine so we can have something like a limited warranty that will work and so for ends and the question was what testing that we hold an assurance that in fact seems to rated it was uh the quite incorrect agree area and so uh and the species was seen diffuser can have which was 1 1 correct position induces you was saying something else was the OK your it's senseless from and this the development of Saturn itself of runs on either man or ugliness is so all developers of a business that nor developer working memory nodes so that sounds and that is a call for help so have any Windows based developers here which is a random pattern conference happens in their lives people development series over and we the and and so on we have we can always use help there uh but as the sets of meaning of the words of the Court of word is happening on the news and match so we have just as you can see that you know that we do not have a and this is is moment when you of would just kind of test it after the fact so many people running from their own from references the comparison test all on on their machines tell us the reason is that does not work program for you so fix and then goes out and we have this huge words yet their identities just 90 but maybe we start sites you that's the option of training and test it show that the the machines those work as because maybe not too many people are Windows developers that maybe use item on Windows and test it and just to be sure I have settings and doesn't work like you can run at the moment and so that's as part of the prosecution thank you who can be in the and interim within few