I believe it is possible to leverage the power of two USB Connected connected Google Coral TPUs in conjunction with one another (or at least side by side, running their own inferences each).
However, is it possible to leverage two or more Google Coral TPUs which are connected to separate Edge Devices but which sit on the same network connected by hard line ethernets & a switch?
Humn, there is no official API for doing this. So I guess I'll give you a more general answer.
You may want to look into kubenetes? I have not tried it, but it seems that they have supports for aarch64 which should works perfectly on the dev board.
Create servers and communicate via http? I actually have an opensource project calls restor, unfortunately it hasn't been maintained. But you may also check out doods.
Possibilities are endless :)
You may run multiple models on a TPU or also you may run multiple TPUs on a single device. Look into this:
https://coral.ai/docs/edgetpu/multiple-edgetpu/
If you would run multiple models on a TPU, the TPU will probably keep switching between models to load them. But, you may combine them using the compiler tool to avoid this.
If you would use multiple TPU devices on a single device, you may tell the interpreter instance which device you mean.
All the information are in the above link.
Related
a particular question: is there a direct way to make an AS400 connection or do you have to go through PHP? I don't have to read data on DB2, but do the various commands (wrkactjob, wrksyssts, etc.). Thank you.... sorry for the English.
what I thought (maybe it can't be done) is this: in the app screen there are buttons, each button executes a command (wrkactjob, clroutq, etc.) and the answer occurs in another screen ... I didn't want to write commands directly like on 5250 or telnet
From your referral to typical "health checking" programs, like wrkactjob, and wrksyssts I guess your primary goal is to have an application running on your Android based phone to quickly check the status of a machine from wherever you are. Correct?
Have you considered how to get access to the machine's IP address when you're on the road and not connected to the local WiFi?
You can access this "performance data" through SQL — as John Y pointed out — and display it in whatever for is convenient on your mobile device. But I highly doubt Android provides ODBC infrastructure, even though you might manage to get the correct binary blobs (CPU wise) of the ODBC drivers from IBM botched into Android.
Otherwise you want to create a mechanism to scrape the screen for whatever is displayed, and translate that textual representation into UI elements provided by Flutter, if you want UI elements instead of textual output.
If you already have your doubts that you can't do telnet with Flutter, I think you'll have to learn a lot about Flutter as an SDK before even thinking about how to start developing an application. TCP/IP networking services are a function of the underlying OS and you'll have to go through all the Flutter abstraction layers to eventually be able to build a TCP session. With some luck, there is already code available to handle the telnet protocol peculiarities for you. Perhaps not, then you need to provide telnet negotiation and protocol yourself. This is documented in numerous RFCs. Use Google yourself.
Next point is: You need to establish translation routines for conversion of EBCDIC charset data into ASCII. Because Android is Linux based, you need to learn how to call libc routines like iconv() through Flutter, providing a C interface for charset conversion, including EBCDIC flavors as source/target.
Final point: You need to learn how to interpret the 5250 data stream, and translate the terminal emulator instructions into dynamically place Flutter UI elements at appropriate positions on screen. And of course you need to understand what to send back to IBM i to make it understand your request. The tn5250 data stream is also documented in publicly available RFCs.
There once was a facility called Workstation Gateway in the OS, but as I've found out, it has been removed in V5R2. This might have provided an easier means, because the 5250 data stream was converted on the fly to plain HTML.
Now it's your turn to decide if your goal is worth the apparent effort you're required to go through.
I am not sure what you mean by "direct". Do you mean doing your own socket programming? You could, but there are easier ways to connect.
The most obvious and straightforward choices are probably ODBC, JDBC, HTTP, and SSH.
ODBC and JDBC of course provide an SQL-based interface, and you can use that to issue commands (via the QCMDEXC procedure or scalar function) or access an increasingly comprehensive array of IBM i services.
If what you need still isn't available via SQL, or you simply don't like working in SQL, you could make use of the XMLSERVICE library, which provides its own programming interface "on top of" any of the connection types mentioned above. Despite all the instructions for building from source, normally this should already be installed on your IBM i. There are higher-level wrappers for XMLSERVICE in several programming languages (.NET, Node.js, PHP, Python, Ruby, and Swift), but as of this writing, not Dart. I am not familiar with Flutter, but I imagine you could use the JavaScript interop package to work with the Node.js wrapper.
Is there an emulator to debug code for TPU, instead of expending money debugging on real TPU before everything is ready to work?
Any other technique that would have a similar effect would be appreciated as answer as well.
I've found out that there's not an emulator nor any kind of virtualization of TPUs for development.
What can be done instead, is to run your code in Colab notebooks, being restricted by some limitations (i.e. your data has to be stored in Google Cloud to be accessible for the notebook).
There are several articles in websites like Medium about training/using models in TPUs through notebooks, each one focusing on different aspects or with different content within the example code. Here is one of them, just to provide an example and further useful links for anyone interested.
I m trying to understand better the two frameworks therfore i m trying to figure out the similarities and differences between FIteagle framework and OpenIot because both of the frameworks includes the same aims, the first one provides a testbeds environments which provide different resources to manage and communicate with and the second one provides the possiblity to connect to different sensors within a database cloud and it provide the ability to communicate with the sensors and to aply some IoT services on it. Does anyone has an idea about the two frameworks ?
Not being familiar with any of the above frameworks, I would say that eventually all IoT frameworks will focus on virtual markets in order to deliver industry-specific services. Consider transportation and smart grids - those are completely separate industries. for example, in transportation - geo analytics is much more important than in smart grids where meters tend to have fixed locations.
For those who are still interesting and making research in this area and looking for a detailed comparative and understanding of the two frameworks, I published a paper in this matter which contain a specific and a complete understanding of both frameworks. Since the paper is not uploaded yet to the internet Please get in touch with me in case you want to read it.
I will provide a link here as soon as I upload it.
I have opnet 14.5 I am trying to find a Mobile Node with dual interfaces one for 802.11e (WLAN) and the other for 802.16e (Wimax) but it seems it is not there do opnet 14.5 has this node if no do I need special License ?.
thanks,
I would build a custom mode using OPNET Modeler with both interfaces in the model. You will have to design the connections and rules. Is it supposed to be a crossbanding relay or bridge or is it supposed to be a single endpoint node (like a computer) that acts as a source and sink only? Those are the questions you need to consider. If the latter case and you have a wired+wireless model, you might try replacing the wired interface with a WiMax interface, resulting in two transmitter/receiver pairs (WiMAX vs. WLAN). I'm not sure about the licensing (you will probably need Modeler + their wireless license among their plethora of license types), but I'm sure Riverbed/OPNET customer service will be happy to assist.
I am unsure whether this question belongs here, so please feel free to migrate it if it doesn't.
My question is this, Is it possible to combine many different PC units to work as one?
Take for example, buying 3 different HP desktop PCs. Then link the hardware so that they act as one PC.
If so, please point me to some resources I can use.
Thanks for your time.
Note
I am not referring to linking them over a network, but rather, making the actual hardware work together.
I am not sure this is possible, so I am sure all my google search terms are not related to the issue.
You should realize that linking them over a network does not obviate their ability to work together to complete a task. Most supercomputers and clusters today are interconnected via a network (albeit a very high speed one like Infiniband). The key is to have software that can understand that it's operating in a distributed environment (e.g. MPI libraries). You might also take a look at OpenMP or Hadoop. It really depends on what you want to do with it.
You can not link some computer together to behave like one!!! Therefore you will need special hardware, which offers you the possibility to extend the numbers of CPU's working together. (Like a cray)
If you are talking about write an application that will be processed by those computers, you may be referring to MPI.
You can use the Open MPI to do that, most of languages nowdays have MPI libraries.
You can find a more elaborated information about Parallel Computing on Wikipedia Parallel Computing Article.